java - 创建变量没有输出??
问题描述
class Car{ int num; String color; public static void run() {System.out.println('行驶'); }}class Demo99 { public static void main(String[] args) { Car baoma = new Car();
//这这儿为什么需要使用baoma.run();这个语句才有输出呢?//下面的代码不需要引用函数就可以得到输出了
}}
这个代码没有输出这是为什么呢??下面这个代码
public class CodeBlock02{ { System.out.println('第一代码块');}public CodeBlock02(){System.out.println('构造方法');}{ System.out.println('第二构造块');} public static void main(String[] args){ CodeBlock02 acv = new CodeBlock02(); //或者用这个都有输出 new CodeBlock02();}}
问题解答
回答1:new 会去调用构造方法,
public class Demo{public Demo(){ System.out.println('demo');} } public class Run{public Run(){}public void print(){ System.out.println('run');}
如果你使用了new Demo 这个时候会去调用Demo()这个构造方法也就是会输出。但是new run()不会,因为构造方法没有调用输出语句,要输出需要去调用print()方法。
回答2:第二个输出的是“第一代码块”吧?
回答3:你要理解这几个概念:
构造方法
静态方法
实例方法
代码块
了解了这几个, 你就想明白了
相关文章:
1. windows误人子弟啊2. php传对应的id值为什么传不了啊有木有大神会的看我下方截图3. 如何用笔记本上的apache做微信开发的服务器4. python - linux 下用wsgifunc 运行web.py该如何修改代码5. 关于mysql联合查询一对多的显示结果问题6. 实现bing搜索工具urlAPI提交7. 冒昧问一下,我这php代码哪里出错了???8. mysql优化 - MySQL如何为配置表建立索引?9. MySQL主键冲突时的更新操作和替换操作在功能上有什么差别(如图)10. 数据库 - Mysql的存储过程真的是个坑!求助下面的存储过程哪里错啦,实在是找不到哪里的问题了。
