Java漫游记(二)----对象和类

2016-12-05  本文已影响0人  小芒果先生

学习目标

定义对象的类

面向对象程序设计OOP就是使用对象进行程序设计。

类:是一个模板、蓝图,用来定义对象的数据域是什么以及方法是做什么的。

对象:代表现实世界中可以明确标识的一个实体,每个对象都有自己的属性、状态和行为。

Java类使用变量定义数据域,使用方法定义行为(动作),类还提供了构造方法,
的特殊类型的方法,调用它可以创建一个新的对象,构造方法本身是可以完成任何行为的,但是
构造方法主要为了完成初始化动作。

圆对象

定义类和创建对象(实例)

要求:程序构造了三个圆对象,半径分别为1.0、25和125,然后显示这三个圆的半径和面积,将第二个对象的半径改为100,然后显示它的新半径和面积。

public class TestCircle1 {
    public static void main(String[] args) {
        Circle1 circle1 = new Circle1();
        System.out.println("半径为:" + circle1.radius+ "的圆的面积为:" + circle1.getArea() );

        Circle1 circle2 = new Circle1(25);
        System.out.println("半径为:" + circle2.radius+ "的圆的面积为:" + circle1.getArea() );

        Circle1 circle3 = new Circle1(125);
        System.out.println("半径为:" + circle3.radius+ "的圆的面积为:" + circle1.getArea() );

        circle2.radius = 100;
        System.out.println("半径为:" + circle1.radius+ "的圆的面积为:" + circle1.getArea() );

    }
}

class Circle1{
    double radius;

    Circle1() {
        radius = 1.0;
    }

    Circle1(double newRadius){
        radius = newRadius;
    }
    double getArea(){
        return radius * radius * Math.PI;
    }
 }

要求:每台电视机都是一个对象,每个对象都有状态(当前频道、当前音量、电源开或关)以及动作(换台、调节音量、开关电视)

 * 如果打开电视,那么频道和音量都没改变,在改变其中任何一个之前,必须检查当前值
 * 是否在一个规定正确的值内。
 *
 */
    public class TV {
    //设置TV的默认属性
    int channel = 1;
    int volumeLevel = 1;
    boolean on = false;

    public TV(){

    }

    public void turnOn(){
        on = true;
    }

    public void turnOff(){
        on = false;
    }

    public void setChannel(int newChannel){
        if (on && newChannel >=1 && newChannel <= 120){
            channel = newChannel;
        }
    }
    public void setVolumeLevel(int newVolumeLevel){
        if (on && newVolumeLevel >=1 && newVolumeLevel <= 7){
            channel = newVolumeLevel;
        }
    }

    public void channelUp(){
        if (on && channel < 120){
            channel ++;
        }
    }

    public void channelDown(){
        if (on && channel >1){
            channel --;
        }
    }

    public void volumeUp(){
        if (on && volumeLevel <7)
        {
            volumeLevel++;
        }
    }
    public void volumeDown(){
        if (on && volumeLevel >1){
            volumeLevel--;
        }
    }
}

构造方法

构造方法是一种特殊的方法,具有一下特征

通常一个类会提供一个没有参数的构造方法,称为无参构造方法。一个类可以不定义构造方法,在这种情况下,类会隐形的定义一个
方法提为空的无参构造函数(类中没有明确定义任何构造方法时才会提供它。)

引用变量和引用类型

上一篇 下一篇

猜你喜欢

热点阅读