1.java程序框架
public class MyApp
{
public static voidmain(String args[])
{
System.out.println("HelloWorld!");
}
}
2.java小程序框架
a. java文件:
import java.awt.*;
importjava.applet.Applet;
public class MyAppextends Applet
{
public voidpaint(Graphics g)
{
g.drawString("欢迎学习java语言",20,20);//在(20,20)位置显示文字
}
}
b. html文件
<html><head><title>MyApplet</title></head>
<body>
<!--以下一行是必须的-->
<appletcode="MyApp.class" width=200 height=100></applet>
<body>
</html>
3. a. 公共类名必须与文件名一致;
b. 公共类只能有一个;
c.如果源代码中没有公共类,那么文件名和任意一个类名一致就可以了。
4.用到main方法参数的程序,在运行时需要在命令行下输入命令行参数,在eclipse中可以在Run->RunConfigurations->Arguments->Program arguments中输入。
5.a.对于类名,每个单词的开头字母应该大写,如MyFirstApp
b.方法名和变量名,第一个字母不用大写,如myMethod()
c.常量应该全部大写
d.包名应该全部小写
6. 文档注释,如
/**
注释内容
*/
7. 编译后形成的class文件又称字节码文件
java采用unicode编码,因此char类型占用2个字节,如charch='好'
boolean占用1个字节,不能转换成数值类型数据。
10.利用逻辑与和逻辑或做逻辑运算时,如果只计算左边即可确定最终结果,右边表达式不被执行
11. 在声明数组时不允许在方括号内指定个数;二维数组也不可指定,第二维长度可以不相等
12. 创建数组时可用整形变量指定数组元素个数,如
int size=20;
doubledoubleArray[]=new double[size];
13. 创建二维数组
a. 第二维确定时
intArray=new int[3][5];
b.第二维不确定时
intArray=new int[3][];
intArray[0]=new int[2];
intArray[1]=new int[5];
intArray[2]=new int[1];
14. 变量必须初始化才能使用
15. 创建数组时元素默认初始值
对象引用:null 整形变量:0 浮点变量:0.0
布尔变量:false 字符变量:'\u0000' (unicode转义字符)
16. 数组length属性保存数组长度
17. 对象必须用new分配空间才可使用,因此创建应用类数组前须先创建数组,然后创建对象,才可使用。数组间可以相互赋值,表示数组共同指向同一地址。
18. 可以在定义类的同时给成员变量赋初值,成员变量赋初值必须与成员变量的声明写在同一条语句里,因为类的内部不允许直接出现执行语句。
19. 在eclipse的console窗口输入时,注意移动光标,使光标处于提示字符之后,否则可能会读取错误使执行失败。
20. java提供一个称为垃圾收集器(GarbageCollector)的自动内存管理系统,定时或在内存不足时自动回收垃圾对象所占的内存空间。
21. 类成员修饰符public:所有类都能访问;protected:子类和同一个包中的其他类能够访问;默认:同一个包中的类能够访问;private:只有该类可以访问
22. 类修饰符public:公共类;默认为在包范围内其他类均可使用;不能用protected和private修饰类
23. java会给类的静态成员变量(也称类变量)自动赋初值,数值型初值为0
24. 类的静态成员方法(类方法)只能调用静态方法,不能调用普通成员方法,main也如此;可以访问类的静态成员变量,对普通成员不能操作;普通方法可直接调用静态方法
25. java规定子类与父类之间是单继承,每个子类只能有一个父类,子类与父类的关系是树形的关系
26. a.子类中的方法不能抛出父类中被覆盖方法没有抛出的异常;
b.子类中方法的访问权限不能比父类中被覆盖的方法访问权限低;
c.方法覆盖是实现多态的一种手段;
d.子类对父类的非静态方法可以实现方法覆盖
e.静态方法不能重载。子类静态方法不会覆盖父类中的同名静态方法。
f.构造方法可以使用this调用同类的其他构造方法,格式为“this(形参)”
g.成员变量不能覆盖,父类与子类各有一个同名成员变量
h.通过父类的引用指向子类对象时,不能使用子类不具备的成员
i.若子类覆盖了父类的某些方法,通过父类的引用指向子类对象时,所调用的方法为子类中的方法
j.可对父类引用的对象进行子类强制类型转换,以使用子类新增的成员方法
k.可以使用“子类是父类”来验证继承结构的合理性
27. 方法重载与方法覆盖的比较
a.重载必须满足的条件:方法名必须相同;参数表必须不同;返回类型可以不同;修饰符可以不同;可以在类内部进行,也可以在子类中对父类方法进行重载
b.覆盖必须满足的条件:名称、参数表、返回类型必须相同;子类方法不能缩小所覆盖方法的访问权限;子类方法不能抛出比所覆盖方法更多的异常;覆盖限于子类方法对父类方法进行,不能在同一个类内部进行
28. final可以用来修饰类、方法和局部变量,修饰过的类叫最终类,修饰过的方法叫最终方法,修饰过的变量实际上相当于常量
a.最终类:不能被继承,不能有子类,如String,Math
b.最终方法:子类不能覆盖父类中的最终方法,否则产生编译错误
c.final修饰的成员变量或局部变量:没有默认值,必须在定义时指定其数据值
29. 抽象类与抽象方法(abstract)
private和static修饰的方法不能声明为抽象方法;抽象类可以没有抽象方法,一般至少有一个;若类中有抽象方法,必须声明为抽象类;abstract不能用来修饰实例变量;abstract不能与private、static、final等同时修饰一个成员方法
30. 接口(interface)
接口里的方法全部都是抽象方法;接口是一种数据类型;成员变量是public,static,final的,可省略这些关键字,必须在声明时赋值;成员方法是public,abstract的,可省略这些关键字
31. java中,类型转换时,如果是转换成信息更多的类型则不用显式转换,否则必须显式转换。如:
int x=1;
double y=2.0;
x= (int)y;//此处必须显式转换
y= x;//此处不必,但还是加上比较统一而且不费脑子。
32. 若参数类型是基本类型,传递的是变量的值,而不是引用。 33.java异常处理:finally中不要return
java笔记
最新推荐文章于 2024-07-06 23:22:26 发布