首页 > 编程语言 >类的编写模板之简单Java类

类的编写模板之简单Java类

时间:2022-10-25 00:22:53浏览次数:53  
标签:salary Java String return emname emno 编写 public 模板

简单Java类是初学java时的一个重要的类模型,一般由属性和getter.setter方法组成,该类不涉及复杂的逻辑运算,仅仅是作为数据的储存,同时该类一般都有明确的实物类型。如:定义一个雇员的类,定义一个教师的类,定义一个工人的类....

简单java类开发要求

  • 注意:如果需要定义多个构造方法,则将构造方法按照参数个数的升序或者降序排列

编写一个简单java类该部门类里面需要包含部门编号 部门名称 部门位置三个核心属性

  //编写一个简单java类
 public class Dept{//该类表示部门本身存在意义
	 
	 private long deptno;//封装部门编号
	 private String dname;//封装部门名称
	 private String loc;//封装部门位置
	 public Dept(){};//必须定义无参构造
	 public Dept(long deptno,String dname,String loc){
		 this.deptno=deptno;
		 this.dname=dname;
		 this.loc=loc;
	 }
	 //类中的属性必须使用setter和getter方法设置和获得
	 public long getDeptno(){
		 return this.deptno;
	 }
	 public String getDname(){
		 return this.dname;
	 }
	 public String getLoc(){
		 return this.loc;
	 }
	 public void setDeptno(long deptno){
		 this.deptno=deptno;
	 }
	 public void setDname(String dname){
		 this.dname=dname;
	 }
	 public void setLoc(String loc){
		 this.loc=loc;
	 }
	 //输出对象的信息不直接输出 要返回给调用处处理
	 public String getInfo(){//没有特定说明该方法固定为getInfo()
		 return"部门编号:"+this.deptno+"部门名称:"+this.dname+"部门位置:"+this.loc; 
     }
	 public static void main(String[]args){
		 
		 Dept de=new Dept(3443,"java进阶编程实战工作室","中国");
		 System.out.println(de.getInfo());
	 }
 }
	 
	 

简单java类的拓展---带有部分业务逻辑

//编写增强版简单Java类--带有部分业务逻辑
public class Employee{
	
	private String emname;//封装姓名
	private long emno;//封装员工编号
	private double salary;//封装员工工资
	private double rate;//增长额
	public Employee(){//必须提供无参构造
		this(1000,"无名氏",0.0,0.0);
	
	}
	public Employee(long emno){
		this(emno,"新员工",3000.0,0.01);
	}
	public Employee(long emno,String emname,double salary){
		this(emno,emname,salary,0.05);
	}
	public Employee(long emno,String emname,double salary,double rate){
		this.emno=emno;
		this.emname=emname;
		this.salary=salary;
		this.rate=rate;
	}
	//必须提供getter setter方法
	public long getEmno(){
		return this.emno;
	}
	public String getEmname(){
		return this.emname;
	}
	public double getSalary(){
		return this.salary;
	}
	public double getRate(){
		return this.rate;
	}
	public void setEmno(long emno){
		this.emno=emno;
	}
	public void setEmname(String emname){
		this.emname=emname;
	}
	public void setSalary(double salary){
		this.salary=salary;
	}
	public void setRate(double rate){
		this.rate=rate;
	}
	//输出对象信息用return 
	public String getInfo(){
		return "员工编号:"+this.emno+"员工姓名:"+this.emname+"员工工资:"+this.salary;
	}
	//进行增长后工资的计算方法
	public double salaryValue(){
		this.salary=this.salary*(1+this.rate);
		return this.salary;
	}
	
	public static void main(String[]args){
		Employee em=new Employee(2455,"张三",10000,0.01);
		System.out.println("增长后的薪资为:"+em.salaryValue());
		
	}
}
	

其实通过这些代码可以发现,当给对象赋值的时候,都没有经过setter函数,其实该处是没有必要经过setter函数的,setter函数主要是对传入属性合理性的判断,我们这里设置的参数,传入的值基本上都可以,在一些特殊的属性 如:年龄,就必须通过setter进行合理性的判断

标签:salary,Java,String,return,emname,emno,编写,public,模板
From: https://www.cnblogs.com/swtaa/p/16823316.html

相关文章

  • javascript编程单线程之同步模式
    javascript编程单线程之同步模式主流的js环境都是单线程吗模式执行js代码,js采用为单线程的原因与最开始设计初衷有关,最早是运行在浏览器端的脚本语言,目的是为了实现页......
  • java流程控制1之Scanner
    一、Scanner对象1、基本语法Scannerscanner=newScanner(System.in);2、基本用法规则通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取之前我们一般......
  • jdbc java database con
    jdbc是一种实现数据库与java之间的接口,mysql等数据都有的jdbc的实现类步骤1.注册驱动:class.forname("com.mysql.jdbc.Driver")2.获取数据库连接:Connection conn=D......
  • JAVA面向对象-下
    Java面向对象-下static1.可以用来修饰的结构:主要用来修饰类的内部结构属性、方法、代码块、内部类2.static修饰属性:静态变量(或类变量)2.1属性:是否使用static修饰,又分......
  • JavaScript的async/await
    ES6入门教程-阮一峰:async函数1.async函数介绍ES2017新规中引入了async函数,async函数其实就是Generator函数的语法糖,只是省去了next方法递归的过程。async......
  • java 线程
                Runnable           getName        线程让步  join()  Thread.sleep();......
  • vscode 设置vue的用户片段-- vue文件 httpget httppost 请求 模板
      文件->首选项->用户片段{"生成vue模板":{"prefix":"vue","body":["<!--$1-->","<template>","<div......
  • JAVA-数组元素动态初始化
    packagecom.itheima;publicclassshuzu02{publicstaticvoidmain(String[]args){//格式:数据类型[]变量名=new数据类型[数组长度]int[......
  • JavaScript学习--History&Location对象
    History:历史记录获取:window.history.方法();window可省略方法:back()加载history列表的前一个urlforward()加载history列表的下一个url Location:地址栏对象获取win......
  • java程序员在交接别人的工作时如何保证顺利交接?
    序言各位好啊,我是会编程的蜗牛,作为java开发者,尤其是在职场混迹了多年的老手,肯定会遇到同事离职的情况,或者自己跳槽的情况,这些都免不了需要做好交接工作,不管是别人交接给我......