java基础知识总结

1、什么是封装?

封装就是将属性私有化,提供公有的方法访问私有属性。

做法就是:修改属性的可见性来限制对属性的访问,并为每个属性创建一对取值(getter)方法和赋值(setter)方法,用于对这些属性的访问。

如:private String name;

public String getName(){

                    return;

           }

        public void setName(String name){

                    this.name=name;

           }

2、  为什么需要封装?

通过封装,可以实现对属性的数据访问限制,同时增加了程序的可维护性。

由于取值方法和赋值方法隐藏了实现的变更,因此并不会影响读取或修改该属性的类,避免了大规模的修改,程序的可维护性增强。

3、  如何实现封装,实现封装的具体方法?

1)、修改属性的可见性来限制对属性的访问。

2)、为每个属性创建一对赋值方法和取值方法,用于对这些属性的访问。

3)、在赋值和取值方法中,加入对属性的存取的限制。


4、  this关键字是什么意思?

有时一个方法需要引用调用它的对象。为此,java定义了this这个关键字。简单地说,

This是在对象内部指代自身的引用。可以直接引用对象,可以解决实例变量和局部变量之间发生的任何同名的冲突。

    (1)构造器中引用该构造器正在初始化的对象

    (2)在该方法中引用调用该方法的对象

    (3)static修饰的方法中不能使用this(无法指向合适的对象,静态成员不能直接访问非静态成员,若非要使用或者访问非静态的方法或者Field那么必须使用 new _class().方法())

5、什么是构造方法?构造方法的语法规则?

         构造方法负责对象成员的初始化工作,为实例变量赋予合适的初始值。

构造方法的语法规则:方法名与类名相同。没有返回类型。

使用new关键字实例化对象的过程实际上就是调用构造方法的过程。或者说实例化一个对象实际上就是去调用这个对象的构造方法。

Xin xin=new Xin();

在实例化对象的时候,已经实例变量赋予了初始值,完成了对象的初始化工作。

6、  为什么需要构造方法?

为属性赋值时,很容易忘记对其中的一项或多项进行赋值。构造方法可以简化对象初始化,为实例变量赋值。

7、  带参数的构造方法:可以显示地为实例变量赋予初始值。在不同的条件下创建不同的对象,这些对象的实例变量具有不同的值。

注意:在使用带参数的构造方法实例化对象时,传递的值和构造方法的参数应当在个数、次序和数据类型上相互配备。

通过调用带参数的构造方法,在创建对象时,一并完成了对象的初始化工作,简化了对象初始化的代码。

8、  什么是方法重载?

定义:如果同一个类中包含了两个 或两个以上方法的方法名相同,但形参列表不同,则被称为方法重载。方法重载要求:两同,一不同:同一个类中,同一个方法名,不同的参数列表。

方法名称相同,参数项不相同。那么认为一个方法是另一个方法的重载方法。有些类里面有不同参数的好几个构造方法,那么这些被称为构造方法的重载。

注意:重载只跟参数有关,与返回类型无关。方法名和参数相同而返回类型不相同,不能说是重载。

典型的方法重载:System.out.println();  Sysstem.out代表了一个java.io.PrintSteam对象,具有多个println(打印)方法,该方法可以接收不同类型的数据作为参数根据类型不同,

调用不同的打印方法。

java.lang包中的Math类中的max方法。

Public static int max(int a,intb);

Public static int max(long a,long b);

Public static int max(float a,float b);

Public static int max(double a,double b);

在调用方法之前,java虚拟机先判断给定的类型,然后决定到底调用执行那个max()方法。

9、  什么是构造方法重载?

构造方法重载是方法重载的一个典型的特例。参数列表不同。

可以通过重载构造方法来表达对象的各种多种初始化行为。也就是说在通过new语句创建一个对象时,可以实现在不同的条件下,让不同的对象具有不同的初始化行为。

Private String name;

Private String sex;

Public Xin(String name){

 this.name=name;

}

Public Xin(String name,String sex){

           this.name=name;

           this.sex=sex;

}

10.访问修饰符:private:当前类的访问权限;default:包访问权限;protected:子类访问权限;public:全局访问权限。如果一个java源文件里定义了一个public修饰的类,则这个源文件的文件名必须与public修饰的类的类名相同。

新新:http://blog.csdn.net/xinxin19881112/article/details/2944752
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值