类与对象、private与封装、setget方法

文章通过三个示例介绍了Java中的类定义和对象使用,包括属性和行为的设定,以及垃圾回收机制。示例一讲解了学生类的创建和使用,示例二涉及手机类和对象的生命周期,而示例三则展示了private修饰符在封装中的应用,以及set和get方法的使用。
摘要由CSDN通过智能技术生成

示例一: 学生类:掌握定义类和使用类


public class Class1 {
    public static void main(String[] args){
    //使用类:1.创建对象   类名 变量名=new 类名()
    Stu stu1=new Stu();
    //2.给属性赋值     点语法   
    stu1.name="麻麻";
    stu1.age=30;
    stu1.gender ='男';
    // 3.指挥对象干事
    stu1.say();
    stu1.study();
    stu1.sleep();
    }
    
}

//一、定义类:声明类-成员变量(属性)-成员方法(行为)
//二、使用类:在类外  1.创建对象   类名 变量名=new 类名()
class Stu{
    //成员属性(即成员变量)
    String name;
    char gender;
    int age;

    //behavior成员方法(即行为)
    public void study(){
        System.out.println(name+" learn java");
    }

    public void sleep(){
        System.out.println(name+" 趴着睡");
    }

    public void say(){
        System.out.println("大家好,我是"+name);
    }

}

示例二:手机类:掌握java一个对象与两个对象的垃圾回收机制;类的使用注意事项

//类名第一个字母用大写,第一个字母不能用数字,不推荐用下划线
/*Java的垃圾回收机制:
    一个对象:成员方法完了脱栈,再脱对象,再脱main方法
    两个对象:成员方法完了脱栈,再脱对象,再脱main方法;先进后出,后进先出*/
/*
1.src:源代码  bin目录:1.写代码   2.编译为.class:字节码文件  
2.有多少个类就有多少个字节码文件,在同一个类中只能有一个public 类
3.同一个包内不能有相同的类
*/
public class Mobileclass {
    public static void main(String[] args){
        Mobilephone phone1=new Mobilephone();

        phone1.brand="sanxin";
        phone1.price=1288.00;

        phone1.call();
        phone1.sendMessage();
        phone1.playGame();

    }

}
class Mobilephone{
    double price;
    String brand;

    boolean isIntelligent;//是否未智能手机

    public void call(){
        System.out.println("用"+brand+" calling");
    }
    public void sendMessage(){
        System.out.println("用"+brand+" sendMessaging");
    }
     public void playGame(){
        System.out.println("用"+brand+" playing Game");
    }
}

示例三:private与封装,set(间接赋值给属性)  get方法(间接获取属性的值)

                规范:后面一般首字母大写 快捷方式右键Generate 插入

//封装的好处;隐藏具体细节,提供公共的访问方式(public set);提高了代码的复用性和安全性
public class Mobileclass {
    public static void main(String[] args){
        Mobilephone phone1=new Mobilephone();

        phone1.brand="sanxin";
        // phone1.price=1288.00;//privat 不能直接访问
       
        phone1.isIntelligent=true;
        System.out.println("phone1.isIntelligent "+ phone1.isIntelligent);
        
        phone1.setPrice(2000);
        //获取价格
        System.out.println("价格"+phone1.getPrice());
        phone1.call();

    }

}
class Mobilephone{
    private double price;//把属性隐藏
    String brand;

    boolean isIntelligent;//是否未智能手机

    public void setPrice(int thePrice){//用void setPrice写set方法
        if(thePrice>1000&&thePrice<10000){
            //赋值范围,通常用在年龄限制里
            price=thePrice;
        }
    }
    public double getPrice(){//无参,没有void 有返回值
        return price;
    }

    public void call(){
        System.out.println("用"+brand+" calling");
    }
   
}

//运行结果
phone1.isIntelligent true
价格2000.0
用sanxin calling

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值