Java学习笔记
1.基础框架
public class hello{ public static void main(String []args){ System.out.println("hello,world"); } }
|
2.Scanner
import java.util.Scanner;
|
调用Scanner类,称为导包
Scanner scan =new Sacanner(System.in) ;
|
以上含义是从键盘中读入
String name =scan.next(); int age =scan.nextInt(); double weight =scan.nextDouble(); boolean love=scan.nex.nextBoolean();
|
3.数组声明
int []a=new int []{1,2,3,4}; String []b=new String[5];
int [][]arr=new int [][]{{1,2,3},{4,5,6},{7,8,9}}; String [][]brr=new String[5][4];
|
4.Arrays工具
1.boolean equals(int[]a,int []b); boolean flag =Arrays.eqals(a,b); 2.String toString(int[]a); System.out.println(Arrays.toSting(a)); 3.void fill(int[] a,int nums); Arrays.fill(arr1,10); 4.void sort(int []a); Arrays.sort(a); 5.int binarySearch(int []a,int key) Arrays.binarySearch(a,key);
|
5.局部变量
public void study(){ System.out.println("study"); }
|
输入study();
即可调用study变量
public static double area(double r){ return Math.PI*r*r; }
|
直接area(xx);
可使用area方法计算
public class Exer3Test { public static void main(String[]args){ Exer3Test test=new Exer3Test(); test .method(); } public void method() { for (int i = 0; i < 10; i++) { for (int j = 0; j < 8; j++)System.out.print("*"); System.out.println(); } } }
|
声明test形参后,调用method对象
6.方法重载
public class exer { public static void main(String []args){ mass m=new mass(); System.out.println(m.max(1,2)); System.out.println(m.max(1.0,1.1)); System.out.println(m.max(1,2,3)); } } class mass{ public int max(int i,int j){ return Math.max(i,j); } public double max(double i,double j){ return Math.max(i,j); } public double max(double i,double j,double k){ return Math.max(i,Math.max(j,k)); } }
|
重载要求类别、方法名称一致,列表不一致
public void show(int i){ System.out.println("1"); } public void show(String str){ System.out.println("2"); } public void show(String...str){ System.out.println("3"); }
|
可变个数形参:无合适匹配对象,进行匹配
n.show("hello"); n.show("hello","world");
|
7.this、封装
private int id; public int getId() { return id; }
public void setId(int id) { this.id = id; }
|
Private
只能用该类中method
修改,调出
public Customer(String f,String l){ this.firstName=f; this.lastName=l; }
|
this
调用属性时,须放在method
中首行,默认首个对象,且无法调用自身
8.继承、重写、super
public class Mankind { private int sex; public void setSex(int sex) { this.sex = sex; } private int salary; public void setSalary(int salary) { this.salary = salary; } public void manOrWoman(){ if(sex==1) System.out.println("man"); else System.out.println("woman"); } public void employeed(){ String jobinfo=(salary==0)?"no job":"job"; System.out.println(jobinfo); } }
|
public class Kids extends Mankind { private final int yeasOld; public Kids(int yesOld){ this.yeasOld=yesOld; } public void printAge(){ System.out.println("I am "+yeasOld+" years old"); } }
|
public class KidsTest { public static void main(String[]args){ Kids somekid=new Kids(12); somekid.printAge(); somekid.setSalary(0); somekid.setSex(1); somekid.employeed(); somekid.manOrWoman(); } }
|
Kids继承Mankid中的属性方法
方法的声明:权限修饰符 返回值类型 方法名(形参列表){
//方法
}
public class person { public void learn(){ System.out.println("学习知识"); } }
|
public class student extends person{ public void learn(){ System.out.println("学习专业知识"); } }
|
public class show { public static void main(String[] args) { student stu=new student(); stu.learn(); } }
|
重写规则:
- 父类子类形参列表相同
- 子类权限修饰符不小于父类
- 父类为void型,子类一致
public class person { int id=1001; }
|
public class student extends person{ int id=1002; public void show(){ System.out.println("身份证为: "+super.id+" 学号为: "+id); } }
|
public class show { public static void main(String[] args) { student stu=new student(); stu.show(); } }
|
super理解为父类的,可以调用父类属性