栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

初识面向对象

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

初识面向对象

第一章 前言介绍 1 面向对象 与 面向过程的区别

都是一种思想,思维方式,思考问题的角度.面向过程 : "关注实现过程|步骤,需要通过几步完成?"然后一步一步执行面向对象 : "关注我该找谁来完成 ?“实现步骤不关注,只关注这个"谁”,他就是对象面向对象是依托于面向过程的 2 面向对象优点

更贴合于显示生活中人们的思考角度面向对象更贴合生活中管理者,面向过程更贴合与执行者将复杂的问题简单化 第二章 类与对象 1 面向对象进行编程 1.1 分析

将程序与生活紧密联系类 : 描述图纸|模板,抽象的事物对象 : 描述生活中真实存在的事物|实例,具体的事物先有类,才能根据类创建对象 1.2 类与对象的关系

特殊到一般,具体到抽象。类可以看成一类对象的模板,对象可以看成该类的一个具体实例。类是用于描述同一类形的对象的一个抽象的概念,类中定义了这一类对象所应具有的静态和动态属
性。JDK提供了很多类供编程人员使用,编程人员也可定义自己的类。 1.3 模板|图纸类|javabean的定义:

注意: 一个方法的形参类型可以为自定义的引用数据类型(图纸类|Javabean类型)

public class 类名{
			//属性--> 成员变量
			public 数据类型 属性名 = 赋值;
			public 数据类型 属性名;
			
			//功能 --> 成员方法
			public 返回值类型|void 方法名(参数列表){
				方法体;
				[return 返回值;]
			}
		}
public class Class001_Phone{ 
	//属性 : 品牌,颜色,价格,尺寸
	public String brand;
	public String color;
	public double price;
	public double size;
//功能 : 打电话
public void call(){
	System.out.println("从前有个人长得像电话,出门就被打了...");
	}
}
1.4 思考:

手机能做什么? --> 打电话,打游戏,聊天… --> 动词 --> 成员方法(不加static修饰的成员方法) --> 功能手机有什么特点|特征 --> 品牌,颜色,价格,尺寸… -->名词 --> 成员变量 --> 属性 1.5 测试类

手机测试类:

导包
不需要导包的类 :
1)java.lang包下的类
2)同包下的类

创建类型的引用|创建对象 new具有创建对象的能力
引用数据类型 引用 = new 引用数据类型();

使用
使用属性(赋值|获取值)
引用.属性名
使用功能
引用.功能名字(参数列表)

public class Class002_PhoneTest{
public static void main(String[] args){
//创建类型的引用|创建对象 new具有创建对象的能力
Class001_Phone phone = new Class001_Phone();
//属性赋值
phone.brand=“华为”;
phone.color=“白色”;
phone.size = 5.5;
phone.price = 6999;

  //属性获取
  System.out.println(phone.color);
  System.out.println(phone.brand);
  System.out.println(phone.size);
  System.out.println(phone.price);
  
  //使用功能
  phone.call();
  phone.call();
  phone.call();
  }

}

1.6 对象内存分析图

2 成员变量默认值 2.1引用数据类型 :

null 2.2 基本数据类型 :

整数 : 0

小数 : 0.0

布尔 : false

字符 : 空字符 ‘u0000’

3 面向对象实例 3.1 蛋糕师制作蛋糕 3.1.1 代码分析

蛋糕师制作蛋糕
分析 : 涉及到了几种事物

​ 实体类 :

​ 蛋糕类
​ 属性 : 形状 口味 大小 价格
​ 功能 : 展示细节(打印所有属性的值)

​ 蛋糕师类
​ 属性: 姓名 性别 等级
​ 功能: 制作蛋糕

注意: 方法的参数与返回值类型都可以为任意类型
基本数据类型
引用数据类型(包括自定义的实体类) 3.1.2 蛋糕类

//蛋糕
class Cake{
    //形状   口味   大小   价格
    public String shape;
    public String taste;
    public int size;
    public double price;

//展示细节(打印所有属性的值)
public void show(){
    System.out.println(shape+"--->"+taste+"-->"+size+"-->"+price);
}
}


3.1.3 蛋糕师类
class Caker{
    //姓名  性别   等级
    public String name;
    public boolean gender;
    public int level;

//制作蛋糕
//返回值 : Cake蛋糕
//参数 : String shape,String taste,int size,double price
public Cake makeCake(String shape,String taste,int size,double price){
    //制作蛋糕对象
    Cake cake = new Cake();
    cake.price = price;
    cake.size = size;
    cake.shape = shape;
    cake.taste = taste;
    return cake;  //返回的是一个蛋糕对象的地址
}

}
3.1.4 测试类
public class Class001_Caker {
    public static void main(String[] args) {
        //蛋糕师
        Caker caker = new Caker();
        caker.name = "胡歌";
        caker.gender =  false;
    Cake cake = caker.makeCake("椭圆形","火锅味",8,300);
    cake.show();
}
}


3.2 冰箱装大象 3.2.1 代码分析

把大象装进冰箱一共分几步?
1.冰箱门打开
2.大象装进去
3.冰箱门关上涉及到了几种事物 :
冰箱类
属性 : 品牌 颜色 大小
功能 : 开门 关门 存储大象
大象类
属性 : 品种 颜色 姓名
功能 : 3.2.2 冰箱类

//冰箱
class Fridge{
    //品牌  颜色  大小
    public String brand;
    public String color;
    public double size;

//开门  关门   存储大象
public void open(){
    System.out.println("冰箱门打开了");
}
public void close(){
    System.out.println("冰箱门关上了");
}
public void save(Elephant ele){
    System.out.println("一头叫做"+ele.name+"的大象被装进冰箱了...");
}

}
3.2.3 大象类
//大象
class Elephant{
    //品种  颜色  姓名
    public String type;
    public String color;
    public String name;
}
3.2.4 测试类
public class Class001_ElephantTest {
    public static void main(String[] args) {
        //大象
        Elephant ele = new Elephant();
        ele.name="云云";
        ele.type="亚洲象";
        ele.color="白色";

    //冰箱
    Fridge fridge = new Fridge();
    fridge.brand="海尔";
    fridge.color="白色";
    fridge.size=50;

    //步骤
    fridge.open();
    fridge.save(ele);
    fridge.close();
}

}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/759796.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号