5. 面对对象(基础) Part 5 --- 学习笔记

5.16 本章要点

  1. 面对对象的三大特征:封装,继承,多态
  2. 类与对象的关系:类是对象的模板;对象是类的实例。类只能通过对象才可以使用
  3. 类的组成为属性和方法。所有属性都应该被封装
  4. 对象的产生格式: 类名称   对象名称 = new 类名称();
  5. 如果一个对象没有被实例化而直接使用,则使用时会出现空指向异常
  6. 类属于引用数据类型。 进行引用传递时,传递的是堆内存的使用权
  7. 类的封装性: 通过private关键字来修饰类的属性或者方法,被封装的属性不能被外部直接调用,而只能通过setter()和getter()方法来完成。   *****只要是属性,则必须全部进行封装*****
  8. 构造方法可以为类中的属性初始化,构造方法与类名称相同,没有返回值类型声明!如果在类中没有明确的定义出构造方法,则会自动生成一个无参的、什么都不做的构造方法。  ******* 一个类中的构造方法可以重载,但是每一个类都至少有一个构造方法!!*******
  9.  String类在java中较为特殊,String可以使用直接赋值的方法,也可以通过构造方法进行实例化。前者只产生一个实例化对象,而且此实例化对象可以重用;后者将产生两个实例化对象,其中一个是垃圾空间!!!!! 在String中比较内容时使用equals()方法,而“==”比较的知识两个字符串的地址值字符串的内容一旦声明则不可改变
  10. 在java中使用this关键字可以表示当前对象;
          通过“this.属性”可以调用本类中的属性;
          通过"this.方法()"可以调用本类中的其他方法;
          也可以通过this()的形式调用本类中的构造方法,但是调用时要放在构造方法的首行!
  11. 使用static声明的属性和方法可以由类名称直接调用,static属性是所有对象共享的,所有对象都可以对其进行操作。
  12. 如果需要限制类对象的产生,则可以将构造方法私有化
  13. 对象数组的使用分为声明数组(开辟栈内存空间)和为数组开辟堆内存空间两步。
          开辟空间后数组中的每个元素的内容都是null
  14. 内部类是一个在类的内部定义另外的一个类。使用内部类可以方便地访问外部类的私有操作。在方法中声明的内部类要想访问方法的参数,则参数前必须加上final关键字!

5.17 习题

  1. 编写并测试一个代表地址的Address类,地址信息由国家、省份、城市、街道、邮编组成,并可以返回完整的地址信息
  2. 定义并测试一个代表员工的Employee类。员工属性包含“编号”、“姓名"、”基本薪水“、”薪水增长额“,还包含计算薪水增长额及计算增长后的工资总额的操作方法
  3. 编写程序,统计出字符串”want you to know one thing"中字母n和字母o的出现次数
  4. 设计一个Dog类,有名字、颜色、年龄等属性,定义构造方法来初始化类的这些属性,定义方法输出Dog信息,编写应用程序使用Dog类
  5. 设计一个表示用户的User类,类中的变量有用户名、口令和记录用户个数的变量,定义类的3个构造方法(无参、为用户名赋值、为用户名和口令赋值)、获取和设置口令的方法和返回类信息的方法
  6. 字符串操作:(1) 从字符串“Java技术学习班 20141125”中提取开班日期  (2) 将“CSDN  JAVA”字符串中的“JAVA”替换为“J2EE”  (3) 取出“Java技术学习班 20141125”中的第8个字符   (4) 清除“Java技术学习班 20141125”中的所有0   (5) 清除“Java技术学习班 20141125 CSDN 老师”中的所有空格  (6) 从任意给定的身份证号码中提取此人的出生日期
  7. 编写一个公司员工类  (1) 数据成员: 员工号、姓名、薪水、部门   (2) 方法: a. 利用构造方法完成设置信息: 单参,值传递员工号,则员工姓名:无名氏,薪水:0;部门:未定。 双参,传递员工号、姓名,则员工薪水为1000,部门:后勤 。  4参, 传递员工号、姓名、部门、薪水。   无参,均为空置     b. 显示信息
  8. 构造一个银行账户类,类的构造包括以下内容: (1) 数据成员用户的账户名称、用户的账户余额(private)  (2) 方法包括开户(设置账户名及余额),利用构造方法完成  (3) 查询余额
  9. 声明一个图书类,其数据成员为书名、编号(利用静态变量实现自动编号)、书价,并拥有静态数据成员册数、记录图书的总册数,在构造方法中利用此静态变量为对象的编号赋值,在主方法中定义对象数组,并求出总册数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值