java入门的第七天

一.类与对象

1.类

概念:生活中一类事物的描述(这些事物具有相同的属性和功能)(群体).
类的组成部分:1.成员变量(类中的变量) 2.成员方法(不带static方法),构造方法(仅有修饰符,通常为public,和方法名,切方法名与类名一致的特殊方法)
作用: 1.描述事物 2.类是java中的数据类型,可以通过类来创建对象.
定义格式:public class 类名{ 成员变量 :private 数据类型 变量名 ; 构造方法:public 类名 (形参) {省略}}

对象

生活中看的见的,摸得着的实实在在存在的每一个事物,就是对象
格式:类名 对象名 = new 类名(实参);

关系:1.一个类可以创建很多对象 2.一个对象,必须有自己所属的类 3.对象与对象之间 互相独立

二.成员变量与局部变量的区别:

1.定义位置不同 成员变量: 类中方法外,独立变量:方法中

2.默认值不同: 成员变量有默认值,局部变量没有

三. private关键字(私有的)

特点:被private修饰的内容,智能在本类中使用,在外部无法直接使用. 常修饰成员变量.

四.this关键字

概念:当前对象,谁调用,谁就是这个this的值.

作用:区分成员变量和局部变量重名

五.构造方法

概念:类中特殊的方法1.方法名与类名一致 2. 仅有修饰符和方法名.

作用:1.创建对象. 2.给类中的成员变量初始化.

与setXxx的区别:构造方法是在创建对象的过程中对成员变量赋值,set是在对象建立成功后,对成员变量修改值.

格式:public 类名(形参){方法体;(一般是对成员变量赋值)}

注意事项:1.如果一个类,没有写构造方法,那么java会赠送一个空参构造方法.一旦写了,就不赠送了.2.构造方法每执行一次,就意味着在堆中新创建一个对象.3.构造方法可以重载.

javaBean

特点:1.成员变量私有 2.写成员变量对应的getter.setter方法 3.写空参数的构造方法和全参数的构造方法.

eg.

1.猫类Cat
	属性:
		毛的颜色color
		品种breed
	行为:
		吃饭eat()
		抓老鼠catchMouse()
2.狗类Dog
	属性:
		毛的颜色color
		品种breed
	行为:
		吃饭()
		看家lookHome()
要求:
	1.按照以上要求定义Cat类和Dog类,属性要私有,生成空参、有参构造,setter和getter方法
	2.定义测试类,在main方法中创建该类的对象并给属性赋值(演示两种方法:setter方法和构造方法)
	3.调用成员方法,打印格式如下:
		花色的波斯猫正在吃鱼.....
		花色的波斯猫正在逮老鼠....
		黑色的藏獒正在啃骨头.....
		黑色的藏獒正在看家.....	
public class Cat(){
//定义两个成员变量
	private String color;
	private String breed;
//定义空参构造方法
	public Cat (){};
//定义满参构造方法
	public Cat (String color , String breed){
	this.color = color ;
 	this.breed = breed ;
	} 
//setter与getter方法
	    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }

    public String getBreed() {
        return breed;
    }

    public void setBreed(String breed) {
        this.breed = breed;
    }
    //行为方法
    public void eat() {
        System.out.println("" + color + "的" + breed + "正在吃鱼.....");
    }

    public void catchMouse() {
        System.out.println(color + "的" + breed + "正在逮老鼠....");
    }
}
//狗同理
public class Dog {
    private String color;
    private String breed;

    public Dog() {
    }

    public Dog(String color, String breed) {
        this.color = color;
        this.breed = breed;
    }

    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }

    public String getBreed() {
        return breed;
    }

    public void setBreed(String breed) {
        this.breed = breed;
    }

    public void eat() {
        System.out.println(color + "的" + breed + "正在啃骨头.....");
    }

    public void lookHome() {
        System.out.println(color + "的" + breed + "正在看家.....");
    }

}
//测试类
public class Cat_DogDemo {
    public static void main(String[] args) {
   		//set 猫
   		Cat c = new Cat ();
   		c.setColor("黄色");
   		c.setBreed("加菲猫");
   		c.eat();
   		c.catchMouse();
   	//构造方法 狗
   	Dog d = new Dog ("黑色","藏獒");
   	d.eat();
   	d.lookHome();
	}
 }
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值