zoukankan      html  css  js  c++  java
  • 面向对象(1)

    1. 什么是面向对象

    面向对象(Object-Oriented,简称OO)就是一种常见的程序结构设计方法。
    面向对象思想的基础是将相关的数据和方法放在一起,组合成一种新的复合数据类型,然后使用新创建的复合数据类型作为项目的基础。

     

    面向对象是一个很抽象的概念,它相对面向过程而言。

    过程与对象都是一种解决问题的思想。

    面向过程:强调的是功能行为,一种过程,先干啥,再干啥;

    面向对象:将功能封装到对象里,强调的是具备某功能的对象;

    按照面向对象的思想,可以把任何的东西看做对象!

     

    面向对象的三个特征:

    封装(Encapsulation);

    继承(Inheritance);

    多态(Polymorphism)

     

    我的总结:

    面向过程:强调的是具体的功能实现;(执行者)

    面向对象:强调的是具备功能的对象。(管理者)

    2.类

    (class)是Java 语言的最小编程单位,也是设计和实现Java 程序的基础,本部分将深入介绍类的相关知识。
    类的概念
    类是一组事物共有特征和功能的描述。类是对于一组事物的总体描述,是按照面向对象技术进行设计时最小的单位,也是组成项目的最基本的模块。类的概念是抽象的,类似于建筑设计中的图纸,是对于现实需要代表的具体内容的抽象。类只包含框架结构,而不包含具体的数据。所以类代表的是总体,而不代表某个特定的个体。

     

    我的总结:类是抽象的,对象是具体的,实实在在的!

     

    类的定义:

    [修饰符] class  类名{

          1~n个构造方法;

           0~n个字段;

           0~n个方法

    }

    定义类,其实就是定义类里面的对象

     

    对象包含:

    状态;(属性)

    功能、行为;(方法)

    通过类来描述对象;

    状态--------成员变量;

    功能、行为——方法;

     

    Eg:

    class Person{
    //属性
        private String name;
        private int age;
        private int sal;
        //方法
        public void show(){
            System.out.println("个人情况:"+name+age+sal);
        }
    }

    3.构造方法

    构造方法:用来构造类的实例(每一个类都默认有一个无参的构造方法,得使用new调用)

    字段:类或对象所包含的数据,对类状态的一种描述;

    方法:类或对象的特征或行为

     

    作用:

    给类中的字段进行初始化,可以用来创建对象。

     

    特点:

    方法名与类名相同

    不用定义返回值类型

    不需要写return语句

     

    我的总结:

    注意:

    默认构造方法的特点。

    多个构造方法是以重载的形式存在的。

     

    构造方法的重载:(需要哪个就去适配哪个,调用哪个)

                  this([实参]);调用当前类的构造方法

                  注意: this([实参]);必须放在构造器的第一行;

     

     

    对象的产生格式:

    类名称  对象名 = new  类名称();

    因为有(),所以是方法,实际上它就是构造方法,并且是非私有的构造方法。

    如:CellPhone cp = new CellPhone();

     

    Eg:

    class Person{
        private String name;
        private int age;
        private int sal;
        
        public void show(){
            System.out.println("个人情况:"+name+age+sal);
        }
    
        public Person(String name) {
            super();
            this.name = name;
        }
    
        public Person(String name, int age) {
            super();
            this.name = name;
            this.age = age;
        }
    
        public Person(String name, int age, int sal) {
            super();
            this.name = name;
            this.age = age;
            this.sal = sal;
        }
    }
  • 相关阅读:
    libevent简介[翻译]3 前言
    libevent简介[翻译]2 关于异步IO的简单介绍
    gdb调试子进程
    openSUSE Firewalld
    libevent简介[翻译]1 关于这个文档
    构建libevent pdf 文档
    openSUSE编译libevent
    为openSUSE添加源
    .Net Core3.0 WebApi 项目框架搭建 五:仓储模式
    .Net Core3.0 WebApi 项目框架搭建 四:JWT权限验证
  • 原文地址:https://www.cnblogs.com/whu-2017/p/9225392.html
Copyright © 2011-2022 走看看