第三周java笔记
六,类
- 面向对象,打球
- 类
方法也叫函数
String的默认值是null, int的默认值是0
驼峰命名法
比如:定义一个person的类
Person person = new Person(); //声明一个Person的变量,变量名叫person
person.name = “张三”; //给person对象的name属性赋值
person.showName(); //对象方法的调用,直接输出:姓名是张三
倒数前两行是重新赋值,
比如:定义一个animal的类
New后面是 类名 括号。
3. 属性,就是成员变量
局部变量只能在局部使用
形参用逗号分开,可以有无数个
局部变量不用修饰符(public,private)
练习:
先建立一个学生类:
然后引用:
可以多个,独立的。
- 方法,也叫函数
方法中不能再定义方法
同一个类中,所有方法可以直接调用,不用new去实例化对象
方法的调用:
对象的初始化
定义方法:
public static int max(int num1,int num2)
public void 方法名 ();{ //在方法中输出
System.out.println(); }
调用时:
student stu = new Student();
stu.name = “zhangsan”;
stu.age = 12; //变量名
stu.shouInfo(); //方法名
方法的调用:主程序就是mian方法
没有返回值时,用void,直接输出,不用return
同一个类中方法可以直接调用,不用new
匿名对象:
不赋值时用匿名对象,且只能用一次
比如:
练习:
方法的书写:
public class Person {
public Sting name;
public int sex;
public void study() { //方法1
System.out.println(“studing”);
}
public void showAge() { //方法2
System.out.println)(age);
}
public int addAge(int i_){ //方法3
age += I;
return age;
}
调用时:
Person p = new Person();
p.name = “张三”;
p.age = 11;
p.sex = 1;
p.student(); //调用方法1,输出studing
int a = p.addAge(2);//调用方法3
System.out.println(“a:” + a + “p.age:” + p.age);
练习2:
类:
Public class Cricle{
Public double area (double r) {
Return 3.14rr;
}
调用时:
Double area = new Circle().area(2);
System.out.printn(“半径为:” + area);
方法的重载:
可以都是两个,但变量类型不能一样,如:
练习:
类:
public void mol (int i ) {
System.out.printin( i * i i )
}
public void mol (int x , int y ) {
System.out.printin( xy )
}
public void mol (string s ) {
System.out.printin( s )
}
在main方法中:
Test t = new test ();
t.mol(2); //一个参数
t.mol(2,3); //两个参数
t.mol(“重载方法”); //字符串
练习3:
如:
在调用时:
可变参数:
- 数组(参数要有,或者写null)
- Java特有… 类型随便写(可以没有参数)
注意:
有多个形参时,可变的形参(比如…)一定要放在形参的最后
如:(int I ; string…args)
不能:(string…args,int i)
三个的话,最后一个一定是可变的形参
内存:
方法的参数传递只有值传递。
一步一步的看:
包:相当于文件夹,
包下面可以有包和文件,
通过import找包下面的文件
包:package 引用:import
同一个包下面引用可以不用import
步骤:
先把属性设置为私有的,用private;
通过编写public类型的setXxx()和getXXX()方法来设置属性和获取属性,比如:对age去写get和set方法,那么方法名就是getAge()和setAge()。
练习:
同一个文件中可以有多个class,但只有一个是public的,其余的都是缺省
省略掉不写
构造器的重载:和方法的重载差不多
构造器也叫构造方法
形参不同:
引用时:
This关键字
重名时用,this.age代表外面的成员变量,等号后面是形参
Javabean
set和get方法
比如:
继承:extends
继承属性或共用代码
不是一个物种的最好不要继承(狗类和人类)
一个子类只能有一个父类,可以多层继承
继承是有逻辑关系的,不要随意继承。
练习:
方法的重写
快捷键:
Super关键字
追溯变量和方法(父类的),也可以追溯父类的父类,也要写在第一行。