输出
System.out.println("这是第一行");//会换行
System.out.print("这是第二行");//不会换行
//格式化输出
System.out.format();//和C语言的printf()用法一样
输入
//使用Scanner类的方法
Scanner in=new Scanner(System.in);
String str1=in.next();//读取下一个字符串
String str2=in.nextLine();//读取一整行作为字符串
short a0=in.nextShort();//读取下一个整型
int a1=in.nextInt();//读取下一个整型
long a2=in.nextLong();//读取下一个整型
double a3=in.nextDouble();//读取下一个双浮点型
float a4=in.nextFloat();//读取下一个浮点型
快读快写
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
String str1=in.readLine();//读取下一行
int str2=in.read();//读取下一个int型
PrintWriter out=new PrintWriter(System.out);
out.println();//换行输出
out.print();//不换行输出
数组
创建数组
int[] array1 = new int[5];
int[] array2 = {1,2,3};
int[] array3 = new int[]{1,2,3};
初始化数组
int [] array1 = new int [ 10 ];//动态初始化,未指定数组内元素。
int[] array2 = {0,1,2,3,4,5,6,7,8,9};//静态初始化,定义的时候确定数组的元素
面向对象
封装:封装就是将数据和操作包装在一起。封装可以起到保护数据的作用,封装的时候可以暴露特定的几个接口用于外界对该类的操作。类的其它没有被暴露的数据不会被外界更改,只能被内部的方法使用。封装的访问权限分为四类:public、protect、default、private。
权限/操作 | public | protect | default | private |
同包同类 | Yes | Yes | Yes | Yes |
同包不同类 | Yes | Yes | Yes | No |
不同包子类 | Yes | Yes | No | No |
不同包其它类 | Yes | No | No | No |
继承:使用某一个类(父类)作为模板创建一个新类(子类)。子类具有父类的所有属性和方法,同时子类可增加属于自己的属性和方法。子类=父类+子类专属的属性+子类专属的方法。使用extends关键字来创建一个子类。如:
public class AAAAA {
public static void main(String[] args) throws IOException {
Person person=new Person("person1",15,100);
Teacher teacher=new Teacher("teacher1",30,120,2);
person.Say();
teacher.Say();
teacher.Teatch();
}
}
class Person{
String Name;
int age;
int weight;
Person(String Name,int age,int weight){
this.Name=Name;
this.age=age;
this.weight=weight;
}
public void Say(){
System.out.println(this.Name+":我正在说话");
}
public void Dance(){
System.out.println(this.Name+":我正在跳舞");
}
}
class Teacher extends Person{
int level;
Teacher(String Name,int age,int weight,int level){
super(Name,age,weight);
this.level=level;
}
public void Teatch(){
System.out.println(this.Name+":我正在上课");
}
}
运行结果:
person1:我正在说话
teacher1:我正在说话
teacher1:我正在上课
多态:子类可以作为父类对象传参或使用,子类特有的部分不会被使用。但是父类不能作为子类对象传参或使用。相当于:某个函数需要一个水果对象,那么现在有一个香蕉和一个苹果对象,都可以传进去。但是如果需要一个苹果对象,你不能传一个水果过去。