1.访问权限
public:当前工程下的任何一个类文件中都可以访问
protected:当前包下的任何一个类和不同包下的子类可以访问(要想从另一个包里面用可以用继承调用)
默认不写:当前包下的任何一个类可以访问(遇上面不同的就是不能在其他包调用)
private:仅仅在当前类里面可以访问访问权限修饰类:只能使用public和默认不写的访问你权限
注意:一个java文件中可以有多个class类,但是只能有一个public修饰的类或者都用默认不写的访问权限
public class Student {
public int age;
protected String name;
String address;
private char sex;
private void study(){
sex = 'a';
}
}
public class Test {
public static void main(String[] args) {
//创建学生类的对象
Student stu = new Student();
stu.age = 10;
stu.name = "张三";
stu.sex = 'm';
stu.address = "湖南衡阳";
}
}
2.this、super
this:代表当前类的对象,不会固定某一个对象上调用当前类的构造方法:this(参数列表);必须写在第一行
(this调用的可以不是同一对象,比如父类用了构造方法,子类继承了则子类中的this表示的是子类的对象)
(当调用无参构造方法的时候可以用this来调用其他有参构造方法)
super:父类的对象
格式:
super调用属性:super.属性名
super调用普通方法:super.方法名(参数)
(例如:super.study())
super调用构造方法:super(参数);
(这个看起来比较模糊,例如:super(int a)或无参的构造方法super())
注意:创建子类的对象的时候,会自动创建父类的对象,用于初始化父类的属性和方法
public class People {
public People(String name){
super();
}
public People(){
}
public String name;
public void study(){
System.out.println("人的study函数");
}
}
public class Student extends People{
public Student(){
super();
}
public void study() {
super.study();
this.name = "王五";
super.name = "李四";
System.out.println("Student的学习方法");
}
}
public class Test {
public static void main(String[] args) {
Student stu = new Student();
stu.study();
System.out.println(stu.name);
}
}
(运行的结果为李四,在这里很重要!!!当子类继承父类时,创建的是俩个对象,方法必须重写,但属性如果子类不调用则子类用的还是父类的属性,所以运行结果是李四)
3.final:最终的,表示不能再修改
可以修饰的范围:类、方法、属性、局部变量
final类:代表当前类不能被继承(不能当父类用)
4.final方法:代表子类不能重写父类的方法
final属性:只能被初始化一次值(常量),而且必须要初始化好(可以使用构造方法进行该写fanal常量)
final局部变量:在当前局部变量使用的范围内,不能再被修改
5、break\continue\return
break:跳出当层循环
continue:结束这一次循环,进入下一次循环
return:结束当前方法
6、八大基本数据类型
java类中:引用(类)类型、基本数据类型
引用(类)类型:String \JFrame\JLabel\Math
基本数据类型:int float double char long short byte boolean