码迷,mamicode.com
首页 > 编程语言 > 详细

Java学习笔记

时间:2017-10-07 16:29:14      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:[]   http   java语言   静态成员   一个   实例   ring   对象   方法   

一个java类文件中可以有多个公有类

public class Test1 {

public static void main(String[] args) {
    // TODO 自动生成的方法存根

}

public class InnerClass{
}   
}

这样书写是正确的。

java规定main()为静态的原因

静态的情况下不需要创建一个对象就可以使用。
非静态成员函数在执行前必须先构造并实例化该函数所在的类。
如果允许非静态的main,那么main函数所在的类必须先进行实例化,
那么就需要再写个函数去实例化main所在的类,再调用main,这个实例化代码又写在哪呢?如果它也是非静态的,岂不是又要写个函数去实例化它所在的类嘛?
因此,JAVA语言就规定了main必须是静态的。
也就是说:程序一定要有一个入口,如果main不是静态的话就需要其他的东西来实例化main,而实例化main的东西如果不是静态的,就需要其他的来实例化,如此循环下去程序是不可能开始执行的。因此,main方法为静态的。

java中的类型转换

首先看一张图。
技术分享

我们写一段代码来看看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转换,同位数的不同的数据类型之间转换都会损失精度。

java中运算符+的作用

首先看一段代码

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中运算符的先后顺序。
第一行中的加号是连接了要输出的两部分内容。
第二行中的加号是算数运算的作用。

Java学习笔记

标签:[]   http   java语言   静态成员   一个   实例   ring   对象   方法   

原文地址:http://www.cnblogs.com/cchenzy/p/7634564.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!