final:不可改变,可以用于修饰类,方法和变量。
1.被final修饰的类不能被继承
2.被final修饰的方法不能被重写
3.被final修饰的变量不能被重新赋值
权限修饰符:使用不同修饰符时,被修饰的内容会有不同的访问权限
同一类中 | 同一包中 | 不同包的子类 | 不同包中的无关类 | |
public(公共的) | √ | √ | √ | √ |
protected(受保护的) | √ | √ | √ | |
default(默认的) | √ | √ | ||
private(私有的) | √ |
内部类:将一个类B定义在一个类A里边,里边的类B就称为内部类,A就称为外部类
成员内部类:内部类可以访问外部类的所有,包括私有的,外部类想要访问内部类必须建立内部类对象
class 外部类{
class 内部类{
}
}
匿名内部类:是内部类的简化写法,它的本质是一个带具体实现的父类或父接口的匿名的子类对象,开发中最常用到的内部类就是匿名内部类
以接口举例:1.定义子类
2.重写接口中的方法
3.创建子类对象
4.调用重写后的方法
目的是调用方法匿名内部类就可以简化
前提:匿名内部类必须继承一个父类或者实现一个父类接口
//父类
public void person(){}
//匿名内部类
public void student(){
new person(){
@Override
public void method(){
System.out.println("");
}
};
}
Scanner类
1.实例化扫描对象,用来扫描系统的标准输入(键盘输入)(创建Scanner对象)
Scanner sc=new Scanner(System.in);
2.打印一个提示信息,提示用户输入内容(不能忘记这一步)
System.out.println("请在控制台输入一个整数");
3.接受用户键盘的输入(读取)
int num=scanner.nextInt();
4.使用用户输入内容(打印输出)
System.out.println("你输入的整数是:"+num);
package "文件夹名";
import java.util.Scanner
public class "类名" {
public static void main(String[] args){
Scanner sc= new Scanner(System.in);
System.out.println("请在控制台输入一个整数");
String num = sc.nextLine();
System.out.println("你输入的整数是:"+num);
}
}