标签:[] http java语言 静态成员 一个 实例 ring 对象 方法
public class Test1 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
}
public class InnerClass{
}
}
这样书写是正确的。
静态的情况下不需要创建一个对象就可以使用。
非静态成员函数在执行前必须先构造并实例化该函数所在的类。
如果允许非静态的main,那么main函数所在的类必须先进行实例化,
那么就需要再写个函数去实例化main所在的类,再调用main,这个实例化代码又写在哪呢?如果它也是非静态的,岂不是又要写个函数去实例化它所在的类嘛?
因此,JAVA语言就规定了main必须是静态的。
也就是说:程序一定要有一个入口,如果main不是静态的话就需要其他的东西来实例化main,而实例化main的东西如果不是静态的,就需要其他的来实例化,如此循环下去程序是不可能开始执行的。因此,main方法为静态的。
首先看一张图。
我们写一段代码来看看java中的数据类型占的位数分别是多少
public class Test1 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
System.out.println(Byte.SIZE);
System.out.println(Byte.SIZE/8);
System.out.println(Short.SIZE);
System.out.println(Short.SIZE/8);
System.out.println(Character.SIZE);
System.out.println(Character.SIZE/8);
System.out.println(Integer.SIZE);
System.out.println(Integer.SIZE/8);
System.out.println(Float.SIZE);
System.out.println(Float.SIZE/8);
System.out.println(Long.SIZE);
System.out.println(Long.SIZE/8);
System.out.println(Double.SIZE);
System.out.println(Double.SIZE/8);
}
}
运行结果如下
从中可以看出结论:除了int向double转换,同位数的不同的数据类型之间转换都会损失精度。
首先看一段代码
public class Test2 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);
System.out.println(X+Y+"=X+Y");
}
}
运行结果如下:
产生这种现象的原因是+既可以作为数学上的运算符号,又可以连接两个字符串,以及java中运算符的先后顺序。
第一行中的加号是连接了要输出的两部分内容。
第二行中的加号是算数运算的作用。
标签:[] http java语言 静态成员 一个 实例 ring 对象 方法
原文地址:http://www.cnblogs.com/cchenzy/p/7634564.html