第三周java笔记

六,类

  1. 面向对象,打球

第三周java笔记
第三周java笔记


  1. 方法也叫函数
    String的默认值是null, int的默认值是0
    驼峰命名法
    第三周java笔记
    第三周java笔记
    第三周java笔记
    第三周java笔记
    第三周java笔记

第三周java笔记

比如:定义一个person的类
第三周java笔记

Person person = new Person(); //声明一个Person的变量,变量名叫person
person.name = “张三”; //给person对象的name属性赋值
person.showName(); //对象方法的调用,直接输出:姓名是张三
第三周java笔记

倒数前两行是重新赋值, 
比如:定义一个animal的类

第三周java笔记

第三周java笔记

New后面是 类名 括号。

3. 属性,就是成员变量
第三周java笔记
第三周java笔记

局部变量只能在局部使用
形参用逗号分开,可以有无数个
局部变量不用修饰符(public,private)
第三周java笔记

练习:
第三周java笔记

先建立一个学生类:
第三周java笔记

然后引用:
第三周java笔记

可以多个,独立的。
第三周java笔记

  1. 方法,也叫函数
    方法中不能再定义方法
    同一个类中,所有方法可以直接调用,不用new去实例化对象
    第三周java笔记

方法的调用:

第三周java笔记
第三周java笔记

对象的初始化
第三周java笔记

定义方法:
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

匿名对象:
不赋值时用匿名对象,且只能用一次
第三周java笔记

比如:
第三周java笔记

练习:
第三周java笔记

方法的书写:
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:
第三周java笔记

类:
Public class Cricle{
Public double area (double r) {
Return 3.14rr;
}
调用时:
Double area = new Circle().area(2);
System.out.printn(“半径为:” + area);

第三周java笔记
第三周java笔记

方法的重载:
第三周java笔记

可以都是两个,但变量类型不能一样,如:
第三周java笔记
第三周java笔记

练习:
第三周java笔记

类:
public void mol (int i ) {
System.out.printin( i * i i )
}
public void mol (int x , int y ) {
System.out.printin( x
y )
}
public void mol (string s ) {
System.out.printin( s )
}
在main方法中:
Test t = new test ();
t.mol(2); //一个参数
t.mol(2,3); //两个参数
t.mol(“重载方法”); //字符串

练习3:
第三周java笔记

如:
第三周java笔记
第三周java笔记

在调用时:
第三周java笔记
第三周java笔记

可变参数:

  1. 数组(参数要有,或者写null)
  2. Java特有… 类型随便写(可以没有参数)
    第三周java笔记

注意:
有多个形参时,可变的形参(比如…)一定要放在形参的最后
如:(int I ; string…args)
不能:(string…args,int i)
三个的话,最后一个一定是可变的形参

内存:
第三周java笔记

方法的参数传递只有值传递。

第三周java笔记
第三周java笔记

一步一步的看:
第三周java笔记

包:相当于文件夹,
包下面可以有包和文件,
通过import找包下面的文件
包:package 引用:import
第三周java笔记
第三周java笔记

同一个包下面引用可以不用import
第三周java笔记

步骤:
先把属性设置为私有的,用private;
通过编写public类型的setXxx()和getXXX()方法来设置属性和获取属性,比如:对age去写get和set方法,那么方法名就是getAge()和setAge()。

练习:
第三周java笔记
第三周java笔记

第三周java笔记
第三周java笔记

同一个文件中可以有多个class,但只有一个是public的,其余的都是缺省
第三周java笔记

省略掉不写
第三周java笔记

 构造器的重载:和方法的重载差不多
构造器也叫构造方法
第三周java笔记

形参不同:
第三周java笔记

引用时:

第三周java笔记

 This关键字
重名时用,this.age代表外面的成员变量,等号后面是形参
第三周java笔记
第三周java笔记
第三周java笔记
第三周java笔记

 Javabean
set和get方法
第三周java笔记

第三周java笔记

比如:
第三周java笔记

第三周java笔记

 继承:extends
继承属性或共用代码
不是一个物种的最好不要继承(狗类和人类)
一个子类只能有一个父类,可以多层继承

第三周java笔记
第三周java笔记

继承是有逻辑关系的,不要随意继承。

第三周java笔记
第三周java笔记

练习:
第三周java笔记
第三周java笔记
第三周java笔记

 方法的重写
第三周java笔记

快捷键:
第三周java笔记
第三周java笔记

第三周java笔记

 Super关键字
追溯变量和方法(父类的),也可以追溯父类的父类,也要写在第一行。
第三周java笔记

第三周java笔记
第三周java笔记