24
2018
09

JAVA学习-类成员属性的封装、构造方法、this使用

成员属性的封装

属性用private封装后外部将不能直接访问,可以使用get,set方法取得或设置属性。在以后进行类定义的时候,一般情况下都要用private封装属性,并提供set,get方法访问属性;

构造方法

用于在new实例化对象时实现对象中属性的初始化,方法名称与类名称一致,不允许任何返回值。


构造方法和set都可以对属性进行赋值,不同的是构造函数只能设置一次,set方法可以随时设置修改属性的值;


匿名对象:实例化对象后,不使用任何变量来表示


this调用本类成员、属性、构造方法

属性:this.属性;

方法: this()、this.方法名称();

this本身表示当前对象;

在以后所编写的程序代码之中,只要是访问本类中属性的时候,一般要加上this。

对构造函数的调用必须在构造函数的首行;构造方法能调用构造方法和普通方法,普通方法只能调用普通方法;构造函数不能互相调用以免造成死循环;


简单Java类,核心开发结构如下:

类名称一定要有意义,可以明确描述某一类事物;

类中的所有属性都必须使用private进行封装,同时封装后的属性必须要提供get,set方法;

类中可以有无数多个构造方法,但是必须要保留无参构造方法;

类中不允许出现任何的输出语句,所有内容的获取必须返回;

【非必须】可以提供一个获取对象详细信息的方法,一般定义方法名为getInfo();


code:

class Person
{
//默认(无参构造函数)
public Person()
{
}
public Person(String name)
{
this();
this.name = name;//使用this,不用this就是参数,用this就是属性
}
//有参构造函数
public Person(String n,int a)
{
//name = n;
//age = a;
this(n);
this.setAge(a);
}
private String name;//姓名
private int age;//年龄
public void setName(String n)//属性set方法
{
name=n;
}
public void setAge(int a)//属性set方法
{
if(a>=0)//get、set属性能进行逻辑判断
{
age=a;
}
}
public String getName()//属性get方法
{
return name;
}
public int getAge()//属性get方法
{
return age;
}
public void tell()//方法
{
System.out.println("姓名:"+name+",年龄:"+age);
}
}
public class PropertyDemo
{
public static void main(String[] args)
{
Person p=new Person();
p.setName("张三");
p.setAge(19);
p.tell();
Person p2=new Person("李四",22);//使用构造函数初始化属性
p2.tell();
new Person("匿名侠",0).tell();//匿名对象使用
Dept dept=new Dept(10012,"开发部");//简单Java类调用
System.out.println(dept.getInfo());
}
}
class Dept{//简单java类示例:部门
private long deptno;
private String deptname;
public Dept(){}//无参构造方法
public Dept(long deptno,String deptname)
{
this.deptno=deptno;
this.deptname=deptname;
}
public void setDeptno(long deptno)
{
this.deptno=deptno;
}
public void setDeptname(String deptname)
{
this.deptname=deptname;
}
public long getDeptno()
{
return this.deptno;
}
public String getDeptname()
{
return this.deptname;
}
public String getInfo()
{
return "【部门信息】部门编号:"+this.deptno+"、部门名称:"+this.deptname;
}
}


执行效果:



版权声明:
作者:真爱无限 出处:http://www.pukuimin.top 本文为博主原创文章版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接.
« 上一篇下一篇 »

相关文章:

评论列表:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。