---------------------android培训、java培训、java学习型技术博客、期待与您交流! -------------------
今天讲的内容是面向对象,面向对象是JAVA学习的重点,由于面向对象的内容较抽象,需要理解的内容也较多。
1、面向对象
面向对象编程是一种计算机编程架构。
OOP主要有抽象、封装、继承、多态四大特征。
抽象用来把客观世界真实存在的事物用编程语言描述出来,抽取的是对象具有的各种属性和行为。
类就是对现实事物的描述,对象就是这类事物实实在在的个体。
描述事物就是描述事物的属性和行为,属性对应类的变量,行为对应类中的方法。
其实定义类,就是在描述事物,描述属性和行为。
2、封装
封装有两层含义:
a、隐藏内部行为,即隐藏内部函数,调用者只能看到对外提供的公共函数。
b、隐藏内部信息,即隐藏内部数据成员。
3、private---私有(权限修饰符)
用于修饰类中的成员(成员变量和成员方法),注意不能修饰外部类
注意:私有仅仅是封装的一种表现形式,之所以对外提供访问方式,因为可以在访问方式中加入逻辑判断语句,对访问的数据进行操作,提高代码健壮性。
如下面这段代码,在Test类中,定义的属性均用private修饰了,需要提供其公共的访问方式。
public class Demo{
public static void main(String[] args){
Test t = new Test();
t.setAge(3);
}
}
class Test{
private int age;
private String name;
public void setAge(int age){
if ( age<=0 && age>120){
System.out.println("不符合规则");
}else{
System.out.println("年龄为" + age + "岁");
}
}
}
4、创建对象
public class Demo{
public static void main(String[] args){
Test t = new Test(); //创建对象
t.age = 20; //给对象内的属性赋值
t.name = "张三";
t.speak(); //调用对象的speak方法
}
}
class Test{
String name;
int age;
public void speak(){
System.out.println("姓名:" + name + ",年龄:" + age);
}
}
以上是创建对象最简单的一种方式
5、构造代码块的执行顺序
public class Demo{
public static void main(String[] args){
Test t = new Test(); //建立对象
}
}
class Test{
public Test(){ //构造函数
System.out.println("这是一个构造函数");
}
{ //构造代码块
System.out.println("这是一个构造代码块");
}
}
上面这段代码的执行顺序是
主函数--建立对象---执行构造代码块--构造函数
程序源码中,构造函数在构造函数前面,但是执行的时候,代码块位于构造函数前面。
6、构造代码块和构造函数的区别:
a、构造代码块是给所有对象进行统一初始化,对象一建立就运行,优先于构造函数运行。
b、构造函数是给对应的对象进行初始化。