java 第三天 面向对象(基础篇)

三大特性:①:封装:对外部不可见、②:继承:扩展类的功能、③:多态:方法的重载,对象的多态性。
Person per = null;//声明对象;开辟栈空间
per = new Person();//实例对象;开辟堆空间
属性保存在堆内存之中,而方法是保存在全局代码区之中;
类是引用数据类型;引用数据就是传递对堆内存的使用权,可以同时为一个堆内存空间定义多个栈的引用操作;
一个栈内存只能指向一个堆内存,一个堆内存可以指向多个栈内存;
封装性:private;setter;getter;
构造方法:①、构造方法名称必须与类名一致。②、构造方法的声明处不能有任何返回值类型的声明。③、不能在构造方法中使用return返回值。
匿名对象:只开辟了堆内存的实例对象;使用一次就等待被垃圾回收机制回收;
小垃圾实例,哈哈
public class myStudent {

   
    public static void main(String[] args) {
        // TODO code application logic here
        Student me = null;//声明对象
        me = new Student("201131000419", "王大锤", 99, 80, 49.3);//实例对象,并用构造方法赋值
        System.out.println("编码" + me.getStuno());
        System.out.println("姓名" + me.getName());
        System.out.println("数学成绩" + me.getMath());
        System.out.println("英语成绩" + me.getEnglish());
        System.out.println("电脑成绩" + me.getComputer());
        System.out.println("总成绩" + me.sum());
        System.out.println("平均成绩" + me.avg());
        System.out.println("最高成绩" + me.max());
        System.out.println("最低成绩" + me.min());
    }

}

class Student {

    private String stuno;//学号
    private String name;//姓名
    private double math;//数学
    private double english;//英语
    private double computer;//计算机

    public Student(String s, String n, double m, double e, double c) {//定义5个参数的初始化,为类中的属性初始化
        this.setStuno(s);
        this.setName(n);
        this.setMath(m);
        this.setEnglish(e);
        this.setComputer(c);
    }

    //setter getter 方法
    public void setStuno(String s) {//设置编号
        stuno = s;
    }

    public void setName(String n) {//设置姓名
        name = n;
    }

    public void setMath(double m) {//设置数学成绩
        math = m;
    }

    public void setEnglish(double e) {//设置英语成绩
        english = e;
    }

    public void setComputer(double c) {//设置电脑成绩
        computer = c;
    }

    public String getStuno() {//取得编号
        return stuno;
    }

    public String getName() {//取得姓名
        return name;
    }

    public double getMath() {//取得数学成绩
        return math;
    }

    public double getEnglish() {//取得英语成绩
        return english;
    }

    public double getComputer() {//取得电脑成绩
        return computer;
    }

    public double sum() {//总成绩
        return math + english + computer;
    }

    public double avg() {//平均分
        return sum() / 3;
    }

    public double max() {//最大值
        double max = math;
        if (english > max) {
            max = english;
        }
        if (computer > max) {
            max = computer;
        }
        return max;
    }

    public double min() {//最小值
        double min = math;
        if (english < min) {
            min = english;
        }
        if (computer < min) {
            min = computer;
        }
        return min;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值