博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java基础--面向对象编程1(类与对象)
阅读量:5056 次
发布时间:2019-06-12

本文共 2634 字,大约阅读时间需要 8 分钟。

1.类(class)的定义

类是对一组具有相同特征和行为的对象的抽象描述。

在程序中,引入类的概念,就是为了快速生成更多的具有相同特性和行为的事物。

2.对象(object)的定义

对象是类的具体实现,表示一个独立的、唯一的个体,具有属性和方法。

3.属性和方法

属性:在程序中类或者对象具有的特征,具体对象的属性拥有的数据称为属性值。

方法:类或者对象的行为。

4.定义类和对象

创建1个Student的类,类的属性有学号(sid)、姓名(name)、年龄(age)、性别(gender),类中声明了一个learn()方法。

1 public class Student{ 2      3     // 声明类的属性 4     String sid; 5     String name; 6     int age; 7     char gender; 8      9     // 声明方法10     public void learn(String cName){11         System.out.println(name+" learn "+cName);12     }13 }

下面代码中新建了一个stu对象,通过.语法给对象的属性赋值和方法调用。

1 public class Test01{ 2     public static void main(String[] args){ 3         // stu是Student的一个对象,也是Student的一个实例 4         // new 操作就是实例化过程 5         Student stu = new Student(); 6         // 给属性赋值(.语法) 7         stu.name = "张三"; 8         stu.sid = "001"; 9         // 调用方法10         stu.learn("java");11         12         Student stu2 = new Student();13         stu2.name = "李四";14         stu2.sid = "001";15         stu2.learn("c++");16         17     }18 }

5.属性的声明

声明方式:[修饰符] 属性类型 属性名称  [=默认值]

在定义成员变量时可以对其初始化,如果不对其初始化,Java使用默认的值对其初始化。(数值:0,0.0   char:\u0000,  boolean:false,  所有引用类型:null)  。

属性的作用域范围是整个类体。

6.面向对象编程思维

OOP(Object Oriented Progarmming),即面向对象编程是Java程序员必须具备的编程思想。Java程序通过类来构造对象,并通过各个对象之间相互配合完成一个复杂的需求。

以下是运用面向对象的编程思想来实现手机播放一首歌曲的需求。

 a.创建1个Music的类,定义类的属性有name、singer、times、content,方法有showInfo()。

1 public class Music{ 2     String name; 3     String singer; 4     int times; 5     String content; 6  7     public void showInfo(){ 8         int hour=times/3600; 9         int minute=times%3600/60;10         int second=times%60;11         System.out.println("正在播放:"+name);12         System.out.println("歌手:"+singer);13         System.out.println("时长:"+hour+"--"+minute+"--"+second);14         System.out.println("歌词:"+content);15     }16 17 }

b.创建1个Phone的类,类的属性有brand、type,类的方法有play(Music music),并在play()方法中调用Music类中的方法music.showInfo()。

1 public class Phone{2     String brand;3     String type;4     public void play(Music music){5         System.out.println("正在使用"+brand+type+"播放歌曲");6         music.showInfo();7     }8 }

c.创建1个phone对象和1个music对象,给2个对象的属性赋值,并通过调用phone.play(music)方法最终实现了手机播放一首歌曲的需求。

1 public class Test03{ 2     public static void main(String[] args){ 3         Phone phone =new Phone(); 4         phone.brand="华为"; 5         phone.type="P20"; 6         Music music =new Music(); 7         music.name="我很快乐"; 8         music.singer="刘惜君"; 9         music.times=213;10         music.content="我也不会难过\n你不要小看我\n有什么熬不过\n大不了唱首歌\n虽然是悲伤的歌\n声音有点颤抖\n也比你好的多\n我还是很快乐";11         phone.play(music);12     }13 }

d.程序运行结果:

 

转载于:https://www.cnblogs.com/WhiperHong/p/10738807.html

你可能感兴趣的文章
STL容器之vector
查看>>
Linux 内核中断内幕
查看>>
DNS负载均衡
查看>>
无法向会话状态服务器发出会话状态请求
查看>>
数据中心虚拟化技术
查看>>
Oracle OEM 配置报错: No value was set for the parameter DBCONTROL_HTTP_PORT 解决方法
查看>>
01入门
查看>>
python正则表达式
查看>>
嵌套循环连接(nested loops join)原理
查看>>
shell统计特征数量
查看>>
复习文件操作
查看>>
C#Hashtable与Dictionary性能
查看>>
10个让你忘记 Flash 的 HTML5 应用演示
查看>>
8个Python面试必考的题目,小编也被坑过 ToT
查看>>
SQL Server 使用作业设置定时任务之一(转载)
查看>>
centos 图形界面和命令行界面切换(转载)
查看>>
Maven启用代理访问
查看>>
Primary definition
查看>>
第二阶段冲刺-01
查看>>
BZOJ1045 HAOI2008 糖果传递
查看>>