Java类开发要求
① 类名称必须存在意义
② 类中所有属性必须private封装,封装后的属性必须提供setter、getter函数
③ 类中可以提供多个构造方法,但必须保留一个无参构造方法
(为了防止构造方法相互调用出现死循环;在继承中相互调用的出口一定会调用父类的构造)-------反射机制(p210)
④ 类中不允许出现任何输出语句,所有信息输出必须交给被调用处输出
⑤ 类中需要提供一个取得对象完整信息的方法,暂定为getlnfo(),而且返回String型数据。
package package03;
/**
* Created by Administrator on 2021/2/10.
*/
class Emp{
//定义一个雇员类
private int empno; //雇员编号
private String ename; //雇员姓名
private String job; //雇员职位
private double sal; //基本工资
private double comm; //佣金
public Emp(){
//定义一个无参构造方法
}
public Emp(int eno,String ena,String j,double s,double c){
empno = eno;
ename = ena;
job = j;
sal = s;
comm = c; //为属性赋值
}
/**
* setter、getter 方法
* @param e.set属性(“ ”)赋值或修改属性内容。
*/
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 setComm(double c){
comm = c;
}
public int getEmpno(){
return empno;
}
public String getEname(){
return ename;
}
public String getJob(){
return job;
}
public double getSal(){
return sal;
}
public double getComm(){
return comm;
}
/**
* 取得简单Java类的基本信息,信息在被调用处输出
* @return 包含对象完整信息的字符串数据
*/
public String getlnfo(){
return "雇员编号:"+ empno +"\n"+
"雇员姓名:"+ ename +"\n"+
"雇员职位:"+ job +"\n"+
"基本工资:"+ sal +"\n"+
"佣 金:"+ comm;
}
}
public class class03 {
public static void main(String[] args){
Emp e = new Emp(7369,"胡鹏程","clerk",800.1,1.0);
e.setEname("胡哈哈");
System.out.println(e.getlnfo());
}
}
雇员编号:7369
雇员姓名:胡哈哈
雇员职位:clerk
基本工资:800.1
佣 金:1.0
1. 面向对象 思想
面向过程:从计算机执行角度出发,以代码执行过程为核心;
面向对象:从人的角度出发,从现实世界角度出发。先确定解决问题所需的对象,再建立对象间的关系,从而确定过程。
类是对象的统称,对象是客观存在的,而类未必是客观存在的;
类是在一组相同或类似的对象中,抽取出共性的特征和行为,保留所关注的部分。(eg:狗是类,泰迪是对象),Java中的类定义了一类对象应具有的哪些属性(成员变量或实例变量)、方法,形成对象的模板。
成员变量即使不赋值也有默认值:整数:0; 小数:0.0; 字符:空栈; 字符串:null;其他:null。
但局部变量没有默认值。