主题:java基础知识总结
在java私塾学习一个多月了,越来越觉得基础的重要,很后悔开始自认为有基础没听老师的话,现在只能找时间补回来,总结了一下基础知识。
1.Java中的类名与文件名
1)在一个java文件中可以有多于一个类定义(更常见于某些组件的监听器类),但只能有一个public class定义,且与文件同名。
2)如果一个java源文件中没有public类,那么每个类的名字没特殊规则,即不必与文件同名。
3)在编译后产生的class文件中,仍旧是多个单独分开的class文件。
2.Java中的几个特殊关键字
Java中的关键字许多大家都比较熟悉,而有几个就不是很常用,如:
1)goto和const是保留关键字,在java中没使用
2)strictfp和volatile不常用; sizeof、zhen不是关键字。
3)true,false,null不是严格意义上的关键字,而是literals
3.数据类型
Java的数据类型分为简单类型和复杂类型两种,简单类型有8个,byte(8b,b即bit,位的意思)、short(16b)、int(32b)、long(64b)、char(16b)、boolean(16b)、float(32b)、double(64b),其他均为复杂类型,例如Object、String,其中Object是所有复杂类型的基类,而且每个简单类型都有对应的复杂类型。关于自定义的复杂类型,可区分为class和interface两种。
4.变量初始化
java中的变量在使用之前必须被初始化,当创建一个对象的时候一些类的变量会自动初始化并赋予缺省值。
数字类赋值0;char类型赋值'\u0000'; boolean类型赋值false;引用对象赋值null;
注意的是在方法之外的类变量的值是自动赋初始值,而方法内的局部变量必须手工初始化。
class AA{
int num;
void test(){
int j;
j =5;//没有这一行则编译不会通过。
j = j+num;
}
}
5.运算符
1)算术运算符 (+,-,*,/,%,++,--)
2)关系运算符 (>,<,>=,<=,==,!=)
3)逻辑运算符 (!,&&,||)
4)位运算符 (&,|,^,~ )
5)移位运算符(>>,<<,>>>)
6)赋值运算符 (=,及其扩展赋值运算符如:+=,-=,*=,/=,%=)
7)其它运算符( ?:,++、--)
6.条件语句(if语句、switch语句)
循环语句(while语句、do-while语句、for语句、break和continue语句)
7.集合
集合是不同元素的无序集合,可以对元素进行添加,查找和删除 ;集合中没有重复元素,添加一个已存的元素会被忽略
Java中Set集合,HashSet 和 TreeSet分别实现Set接口
8.继承
继承是增加方法和字段来扩展现有类的一种机制,每个类都直接或间接的扩展了Object类.子类继承了超类的行为和状态. 继承实现了代码的复用。
关键字:extends
继承几个特点:
1.子类继承父类,则继承了父类的所有方法和属性
2.子类不能访问父类的私有字段,可以通过父类的公用方法去访问
3.子类中调用父类的构造方法,必须在子类的构造方法且第一行关键字super()调用
4.子类定义的方法,同父类中方法一致(方法名,参数类型和个数,返回值),则覆盖父类方法,如果在子类中要调用父类的方法,super.方法名()显式调用,否则默认是子类方法this.方法名()
5.子类中字段名称同父类字段一致,虽合法但应避免这种用法,以免混淆
6.子类同父类之间相互转换,实际是子类引用同父类引用转换.
9.接口
接口不是类,它没有状态和为,只告知应该实现哪些方法
接口特点:
1)接口中所有方法都是抽象的,即它们有名字,参数和返回值,但没有实现
2)接口中所有方法必须为公有,默认为public
3)接口没有实例字段必须为公有静态的且不可修改,默认public static final
关键字:implements
类实现接口几点:
1)类实现接口必须实现该接口中的所有方法,而且方法必须显式声明为public
2)当一个类实现多个接口时,接口不能有完全相同的方法,类似于方法的重载
3)类实现接口方法时,方法名字,参数和返回值必须一致
4)类调用接口中静态常量字段,但不能修改其值
今天就先整理这些吧,剩下的明天继续。
1.Java中的类名与文件名
1)在一个java文件中可以有多于一个类定义(更常见于某些组件的监听器类),但只能有一个public class定义,且与文件同名。
2)如果一个java源文件中没有public类,那么每个类的名字没特殊规则,即不必与文件同名。
3)在编译后产生的class文件中,仍旧是多个单独分开的class文件。
2.Java中的几个特殊关键字
Java中的关键字许多大家都比较熟悉,而有几个就不是很常用,如:
1)goto和const是保留关键字,在java中没使用
2)strictfp和volatile不常用; sizeof、zhen不是关键字。
3)true,false,null不是严格意义上的关键字,而是literals
3.数据类型
Java的数据类型分为简单类型和复杂类型两种,简单类型有8个,byte(8b,b即bit,位的意思)、short(16b)、int(32b)、long(64b)、char(16b)、boolean(16b)、float(32b)、double(64b),其他均为复杂类型,例如Object、String,其中Object是所有复杂类型的基类,而且每个简单类型都有对应的复杂类型。关于自定义的复杂类型,可区分为class和interface两种。
4.变量初始化
java中的变量在使用之前必须被初始化,当创建一个对象的时候一些类的变量会自动初始化并赋予缺省值。
数字类赋值0;char类型赋值'\u0000'; boolean类型赋值false;引用对象赋值null;
注意的是在方法之外的类变量的值是自动赋初始值,而方法内的局部变量必须手工初始化。
class AA{
int num;
void test(){
int j;
j =5;//没有这一行则编译不会通过。
j = j+num;
}
}
5.运算符
1)算术运算符 (+,-,*,/,%,++,--)
2)关系运算符 (>,<,>=,<=,==,!=)
3)逻辑运算符 (!,&&,||)
4)位运算符 (&,|,^,~ )
5)移位运算符(>>,<<,>>>)
6)赋值运算符 (=,及其扩展赋值运算符如:+=,-=,*=,/=,%=)
7)其它运算符( ?:,++、--)
6.条件语句(if语句、switch语句)
循环语句(while语句、do-while语句、for语句、break和continue语句)
7.集合
集合是不同元素的无序集合,可以对元素进行添加,查找和删除 ;集合中没有重复元素,添加一个已存的元素会被忽略
Java中Set集合,HashSet 和 TreeSet分别实现Set接口
8.继承
继承是增加方法和字段来扩展现有类的一种机制,每个类都直接或间接的扩展了Object类.子类继承了超类的行为和状态. 继承实现了代码的复用。
关键字:extends
继承几个特点:
1.子类继承父类,则继承了父类的所有方法和属性
2.子类不能访问父类的私有字段,可以通过父类的公用方法去访问
3.子类中调用父类的构造方法,必须在子类的构造方法且第一行关键字super()调用
4.子类定义的方法,同父类中方法一致(方法名,参数类型和个数,返回值),则覆盖父类方法,如果在子类中要调用父类的方法,super.方法名()显式调用,否则默认是子类方法this.方法名()
5.子类中字段名称同父类字段一致,虽合法但应避免这种用法,以免混淆
6.子类同父类之间相互转换,实际是子类引用同父类引用转换.
9.接口
接口不是类,它没有状态和为,只告知应该实现哪些方法
接口特点:
1)接口中所有方法都是抽象的,即它们有名字,参数和返回值,但没有实现
2)接口中所有方法必须为公有,默认为public
3)接口没有实例字段必须为公有静态的且不可修改,默认public static final
关键字:implements
类实现接口几点:
1)类实现接口必须实现该接口中的所有方法,而且方法必须显式声明为public
2)当一个类实现多个接口时,接口不能有完全相同的方法,类似于方法的重载
3)类实现接口方法时,方法名字,参数和返回值必须一致
4)类调用接口中静态常量字段,但不能修改其值
今天就先整理这些吧,剩下的明天继续。