Java学习笔记----简单Java类☆

此前的内存关系中,对象的名字可以解释为在栈内存中保存,而对象的具体内容(属性)在堆内存中保存;而当没有栈内存指向堆内存空间时,就是一个匿名对象

例.定义匿名对象

class Book{
    private String title;
    private double price;
    public Book(String t,double p){
        title = t;
        price = p;
    }
    public void getInfo(){
        System.out.println("图书名称:" + title + "; 价格:" + price);
    }
}

public class TestDemo{
    public static void main(String args[]){
        new Book("Java开发",69.8).getInfo();   //匿名对象
    }
}
图书名称:Java开发; 价格:69.8

匿名对象只能使用一次,使用之后就将被GC回收

简单Java类:包含类,对象,构造方法,private封装等核心概念的使用

☆基本开发要求:

  • 类名称必须存在意义,如Book、Emp;
  • 类中所有的属性必须private封装,封装后的属性必须提供setter、getter;
  • 类中可以提供多个任意构造方法,但是必须保留一个无参构造方法;
  • 类中不允许出现任何输出语句,所有信息输出必须交给被调用处输出;
  • 类中需要提供有一个取得完整对象完整信息的方法,暂定为getInfo(),而且返回String型数据

例.开发Emp程序类

class Emp{                  //定义一个雇员类
    private int empno;      //雇员编号
    private String ename;   //雇员姓名
    private String job;     //雇员职位
    private double sal;     //基本工资
    private double comn;    //佣金
    public Emp(){           //明确定义一个无参构造方法
    }
    public Emp(int eno, String ena, String j, double s, double c){
        empno = eno;        //为属性赋值
        ename = ena;
        job = j;
        sal = s;
        comn = c;
    }
    public void setEmpno(int e){
        empno = e;
    }
    public void setEname(String e){
        ename = e;
    }
    public void setJob(String j){
        job = j;
    }
    public void setSal(double s){
        sal = s;
    }
    public void setComn(double c){
        comn = c;
    }
    public int getEmpno(){
        return empno;
    }
    public String getEname(){
        return ename;
    }
    public String getJob(){
        return job;
    }
    public double getSal(){
        return sal;
    }public double getComn(){
        return comn;
    }
    /**
     * 取得简单Java类的基本信息,信息在被调用处输出
     * @return 包含对象完整信息的字符串数据
     */
    public String getInfo(){      //取得完整信息
        return "雇员编号:" + empno + "\n" + 
               "雇员姓名:" + ename + "\n" + 
               "雇员职位:" + job   + "\n" + 
               "基本工资:" + sal   + "\n" +
               "佣   金:"  + comn;
    }
}

本例中使用简单Java类的基本原则,明确定义了Emp类,对属性进行明确的封装,同时提供两个构造方法(一个无参,一个有参),而getInfo()取得信息的操作时将内容返回给调用处

例.编写一个测试上述Emp类的程序

public class TestDemo{
    public static void main(String args[]){
        Emp e = new Emp(7396,"SMITH","CLERK",800.0,1.0);
        System.out.println(e.getInfo());
    }
}
雇员编号:7396
雇员姓名:SMITH
雇员职位:CLERK
基本工资:800.0
佣   金:1.0

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值