java类与对象的详解以及实例

java类与对象的详解以及实例

/**
* 类与对象的概述
* @author xinhulian
*
*/
public class TestObject {
/*
* 类:具有相同属性、相同的行为的集合(抽象的概念)
* 人类、车类、 学生类、老师类、等等
* 属性:该类所描述的事物信息
* 行为:事物的能力(能做什么)
* 低耦合,高内聚。
* Java语言的基本单位:类 :
* 类的组成:成员变量、成员方法、局部变量、静态变量、静态方法、构造方法、局部代码块
* 在类中: 相同属性 相同的行为
* 成员变量 成员方法
* 对象:就是类所代表的事物具体的表现形式。(具体的个体)
* 具体:人类 类
* 我 对象
* 面向对象的编程:是在面向过程的基础上实现的。
* 面向过程:强调每一个功能的步骤
* 举例: 接水:站起来--》拿着杯子走饮水机旁边---》
* 打开开关--》如果有水--》接水--》回来
* | |
* 如果没水--》找贝贝--》要水
* 面向对象:用的是对象,由对象来调用功能
* 举例: 接水:找蕊蕊--》蕊蕊去接水
* 面向对象的思想特点:
* 1.更符合人类的思考习惯(懒)
* 2.把复杂的事情简单化(针对编程开发者)
* 3.把我们从执行者变成了指挥者
* 创建对象的格式:
* 类名 对象名 = new 类名();
* 对象的使用:
* 对象名.成员变量;
* 对象名.成员方法;
* 面向对象的开发:就是创建对象,使用对象,指挥对象
* 面向对象的设计:管理和维护对象之间的关系。
* ***面向对象的特征***
* 封装 、继承 、多态
* 匿名对象;
* 没有名字的对象;
* 应用场景:
* 1.调用方法或属性:仅仅是一次调用
* 2.作为一个参数,(不需要对这个对象进行成员变量的初始化)
*
* 成员变量和局部变量的区别:
* 1.在类中的位置不同:
* 成员变量:在类中,方法外。
* 局部变量:方法中或者方法声明上。
* 2.在内存的位置不同:
* 成员变量:在堆里
* 局部变量:在栈里
* 3.生命周期不同:
* 成员变量:随着对象的创建而存在,随着对象的消失而消失。
* 局部变量:随着方法的调用而存在,随着方法的结束而消失。
* 4.初始化值不同:
* 成员变量:没有默认值。
* 局部变量:没有默认值,必须定义,赋值,然后才能使用。
*
*/
public static void main(String[] args) {
//创建一个有接水功能的对象叫张蕊蕊
//(目前知道有接水功能的类是People类,那么就创建一个People类对象)
//创建一个People对象
People p1 = new People();
System.out.println(p1);
System.out.println(p1.name);
p1.name = "张蕊蕊";
System.out.println(p1.name);
p1.age=24;
p1.sex=true;
p1.color="黄皮肤";
//没有明确的返回数据类型的调用方法(直接调用)
// p1.water(p1.name);
People p2 = new People();
p2.name="朱贝贝";
TestObject tt = new TestObject();
tt.name="毛振南";
tt.takeWater(p2);
}
public String name;
/*
* 方法的参数的数据类型是引用类型(类名作为形式参数)
* 如果看到一个方法需要的参数是类的名字,
* 其实就是说明这里实际需要的是一个这个类的对象。
*
*/
//让人接水的方法。
public void takeWater(People p){
System.out.println("我让"+p.name+"帮我去接水");
p.water(p.name);
}
}
ackage cn.day20161123.object;

public class People {

/*
* 人类: 相同的属性:姓名、年龄、性别、肤色等
* 相同的行为:吃饭、睡觉、打豆豆、呼吸等等
*/
//相同的属性(成员变量):
public String name;//姓名
public byte age;//年龄
public boolean sex;//性别 true是女 false是男
public String color;//肤色
//相同的行为(成员方法):
//吃饭的行为
public void eat(String name){
System.out.println(name+"在吃饭");
}
//睡觉的行为
public void sleep(String name){
System.out.println(name+"在睡觉");
}
//打豆豆的行为
public void play(){
System.out.println("打豆豆");
}
//接水的行为
public void water(String name){
System.out.println(name+"去接水");
System.out.println("经过很多步骤,水接回来了");
}
}





猜你喜欢

转载自blog.csdn.net/qq_37529302/article/details/58629730