• 第十三周课堂笔记(第六章内容)类与对象


    6.0 面向对象的三大基本特征:

    封装:是将代码及其处理的数据绑定在一起的一种编程机制,该机制保证程序和数据不受外部干扰且不被误用

    继承:是指一个对象从另一个对象中获得属性和方法的过程,支持按层次分类的概念。例如:车子。通过层次分类方式,一个对象只需在类本身具有唯一型的各个属性,然后从父类中继承通用属性

    多态:是指一个方法只能有一个名称,但可以有多种形态。即程序中可以定义多个同名的方法

    6.1 类和对象的概念

    类和对象是面向对象程序方法中最核心的概念

    类的概念

    类是对某一类事物的描述,是抽象的 概念上的定义

    对象的概念

    对象是实际存在的属于该类事物的具体的个体,因而也称为实例(instance)

    概念对比

    类可以理解为是一个设计图纸,或者模板,而对象是类的一个实例,是具体的个体。所以在编程时,应该先建造类,再创建对象

    类是由数据成员与方法成员封装而成的

    6.2 定义类

    类的一般结构:

    [类修饰符] class 类名称{

            //声明成员变量

            //[修饰符]数据类型 变量名;

            //声明成员方法

            [修饰符]返回值类型 方法名(参数名){...}

    }

     类修饰符:public , 缺省 , abstract , final

    成员变量

    数据类型可以是任何类型,基本的和复合的

    修饰符可以多种 , public , private , final , static 

    可以赋初值,但一般不需要,各数据类型具有默认值

    成员方法:

    是用来定义对类的成员变量进行操作的,是实现类内部功能的机制,同时也是类与外界进行交互的重要窗口

    例:圆柱体类的创建

    1. class Cylinder{
    2. double radius;
    3. int height;
    4. double pi = 3.14;
    5. void area(){
    6. System.out.println("底面积="+pi*radius*radius);
    7. }
    8. double volume(){
    9. return (pi*radius*radius)*height;
    10. }
    11. }

    6.3 对象的创建与使用

    对象的创建:

    1,声明指向“由类所创建的对象”的变量

    2,利用new创建新的对象,并指派给前面所声明的变量

    例:要创建圆柱体对象

    1. Cylinder volu;
    2. volu = new Cylinder();
    3. //第二种写法
    4. Cylinder volu = new Cylinder();

     对象的使用:

    对象的使用采用如下格式

    对象名.对象成员

    1. voiu.radius = 2.8;
    2. viou.height = 5;

    对象存储

    例:圆柱体对象的使用

    1. public class Work1 {
    2. public static void main(String[] args) {
    3. Cylinder cy = new Cylinder();
    4. cy.radius=5;
    5. cy.height=3;
    6. cy.area();
    7. System.out.println("体积是"+cy.volume);
    8. }
    9. }

     在类的内部调用方法

    在类的内部,方法之间可以调用

    1. class Cylinder{
    2. double radius;
    3. int height;
    4. double pi = 3.14;
    5. void area(){
    6. System.out.println("底面积="+pi*radius*radius);
    7. }
    8. double volume(){
    9. return area()*height;
    10. }
    11. }

     6.4参数的传递

    类中的方法形参可以传递参数,参数类型可以是任何类型

    以变量为参数调用方法

    1. public class Work1 {
    2. public static void main(String[] args) {
    3. Cylinder cy = new Cylinder();
    4. cy.setCylinder(2.5 , 5 , 3.14);
    5. }
    6. }
    7. class Cylinder{
    8. double radius;
    9. int height;
    10. double pi;
    11. void setCylinder(double r , int h ,double p){
    12. pi=p;
    13. radius=r;
    14. height=h;
    15. }
    16. }

    6.5 匿名对象

    当一个对象被创建后,在调用该对象的方法时,也可以不定义对象的引用变量,直接调用该方法,这样的对象成为匿名对象。方法执行完后,该对象就成为了垃圾

    new Cylinder().setCylinder(2.5 , 5 , 3.14);
    1. public class Work1 {
    2. public static void main(String[] args) {
    3. Cylinder cy = new Cylinder();
    4. cy.radius=5;
    5. cy.height=3;
    6. cy.area();
    7. System.out.println("体积是"+cy.volume);
    8. }
    9. }
    10. class Cylinder{
    11. double radius;
    12. int height;
    13. double pi = 3.14;
    14. void area(){
    15. System.out.println("底面积="+pi*radius*radius);
    16. }
    17. double volume(){
    18. return (pi*radius*radius)*height;
    19. }
    20. }

     

     

  • 相关阅读:
    基JavaSwing开发公司管理系统+报告 课程设计 大作业
    c++ SQLite 特别好用的库使用实例-查询(2)
    Python---for循环中的两大关键字break和continue
    [ROC-RK3568-PC] [Firefly-Android] 10min带你了解PWM的使用
    云服务的划分IaaS,PaaS,SaaS 的区别
    【录用案例】图像处理类SCI&EI,仅1个月25天录用,录用后27天见刊,见刊后8天检索
    【PostgreSQL内核学习(十八)—— (数据库表参数)】
    定时器与requestAnimationFrame、requestIdleCallback
    Unity实现2D游戏跟随摄像机(平滑移动)
    2的整数次幂三种写法
  • 原文地址:https://blog.csdn.net/2301_80099706/article/details/134645255