您的位置:首页 > 编程语言 > Java开发

java基础学习面向对象之类与对象 五-1

2017-02-09 22:48 375 查看
概念:相对于面向过程而言。是一种思想,强调的是功能的对象。
举例理解面向对象:
如请人修车,我只面向修车的人,不面对修车的过程。只看中修好车的结果。

面向对象的本质:以类的方式组织代码,以对象的方式组织数据。

对象:是具体的事物,我们叫做object,instance实例,以后我们说某个类的对象,某个类的实例,是一样的意思

类:是对对象的抽象,我们叫做class,是对现实生活中事物的描述。

类和对象的关系:特殊到一般,具体到抽象。

类可以看成一类对象的模板,对象可以看成该类的一个具体实例。

类是用于描述同一类型的对象的一个抽象的概念,类中定义了这一类对象所应具有的静态和动态属性。

对象时JAVA程序的核心,在JAVA程序中“万物皆对象”。

JDK中提供了很多类供编程人员使用,编程人员也可定义自己的类。

定义类 :
class 类名(首字母大写){
//属性
private 数据类型 属性名; //建议增加相应的getter、setter方法
//方法 行为
//构造方法

}

例 :
Car c=new Car();
c.color;

在堆内存中产生一个实体 ,通过new操作符来完成。


类和对象的基本使用:

package demo;
/**
* 学生类测试
* @author Angus
*
*/
public class StudentTest {

public static void main(String[] args) {
//需要使用学生类
Student s = new Student();
//给成员变量赋值
s.name = "周杰伦";
s.age = 19;
s.sex= '男';
System.out.println("s.name"+s.name+"s.age"+s.age+"s.sex"+s.sex);
//调用学生类方法
s.eat();
s.sleep();
s.play();
}

}
/**
* 学生类
* @author Angus
*
*/
class Student {
String name;
int age;
char sex;
public void  eat(){
System.out.println("吃饭");
}
public void  sleep(){
System.out.println("睡觉");
}
public void  play(){
System.out.println("玩耍");
}
}


运行结果:



成员变量和局部变量:

  1、局部变量 

    定义在方法内或者语句块内  从属于方法或者语句块

    使用之前,必须手动初始化。

2、成员变量

   定义在类里面、方法外面。从属于对象

      如果没有手动初始化成员变量,系统会自动初始化。初始化的规则如下:

      数字:0,0.0   布尔 false   char \u0000 引用类型 :null。

区别:

1. 定义位置

成员变量:定义在类中,方法外

局部变量:定义在方法中,或者方法的形式参数

2. 存储位置

成员变量:存储在堆中

局部变量:存储在栈中

3. 初始化值

成员变量:都有默认值

局部变量:没有默认值,必须先声明,再赋值,后使用

4. 声明周期

成员变量:随着对象的创建而存在,随着对象的消失而消失

局部变量:随着方法的调用而存在,随着方法的调用完毕而消失

匿名对象的应用

匿名对象时对象的简化形式;
new 实例名称(); 

使用方式一:当对对象的方法只调用一次时,可以用匿名对象来完成,这样写比较简化,如果对一个对象进行多个成员调用,必须给这个对象起个名字。

使用方式二:可以将匿名对象作为参数使用。和传递

 

package demo;
/**
* 学生类测试
* @author Angus
*
*/
public class StudentTest {

public static void main(String[] args) {
//匿名对象 没有命名
new Student().eat();

}

}
/**
* 学生类
* @author Angus
*
*/
class Student {
String name;
int age;
char sex;
public void  eat(){
System.out.println("吃饭");
}
public void  sleep(){
System.out.println("睡觉");
}
public void  play(){
System.out.println("玩耍");
}
}
结果为:



最后附上JDK使用文档API 下载

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息