zoukankan      html  css  js  c++  java
  • java基础3


    (1)面向对象:要经过完整的分析,设计之后才可以进行开发

      面向过程:专注于解决问题

      OOA:面向对象的分析

      OOD:面向对象设计

      OOP:面向对象程序

    (2)面向读写的三大特征

      封装:对外部不可见,保护类中的操作不被外部直接访问

      继承:扩展类的功能,

      多态:方法的重载,相同的方法名称根据参数的类型和个数不同调用的方法不同

            对象的多态性,

    (3)类与对象

    类:共同属性或操作的集合

    对象:是实际存在的事物个体,也叫做实例

    没有类则没有对象的产生;没有对象类不能使用;对象的所有属性和操作都在类中实现。

    类是对象的模板,对象时类的实例。

    (4)类与对象的定义

    类的组成:属性,方法

    定义方法:

     class  类名称

    {

    数据类型 属性名称;

    [权限][静态]  返回值类型  方法名(参数列表)

     {

       方法体

     }

    }

    对象的定义:

    类名  对象名=new  构造方法名()

    产生对象之后,就可以调用类中的属性或方法。

    访问属性:对象名称.属性名称=

    访问方法:对象名称.方法名称()

    对象的产生:

       声明对象:类名称 对象名称=null////直接使用此对象,会出现空指向异常

       实例化对象:对象名称=new 类名称()////开辟堆内存空间,才可以直接使用

    如果对象在使用中只是声明的话,则无法直接调用,必须实例化后才能使用。

    数组的产生于数组一样,有堆-栈空间。对象实际上保存在栈内存中;实例化之后对象开辟对应的堆内存空间,堆内存中存放的是对象的各个属性,因为对象中只能依靠属性的不同来区分;全部的方法保存在全局代码区中。

    只要出现new 就会开辟新的内存空间。

    对象的操作中实际上存在引用传递,所谓引用传递,就是将一个堆内存空间的使用权交给其他对象,相当于为一个堆内存空间起一个别名。

    在程序中所造成的无指向堆内存空间是垃圾空间,垃圾空间等待垃圾回收机制释放空间,垃圾回收称为GC

    一个栈内存只能引用一个堆内存空间,但是一个堆内存空间可以被多个栈内存所同时指向。

    四,封装性

    (1)封装介绍

    封装属性:private 数据类型  属性名称=默认值

    封装方法:private 返回值类型  方法名(参数列表){}

    私有的属性或方法只能在类里访问。

    只要属性必须封装,被封装的属性通过setXX()及getXX()方法设置取得。

    class Person{

           private String name ;      // 表示人的姓名

           private int age ;             // 表示人的年龄

           public void tell(){   // 定义说话的方法       

             /////this表示在本类中调用该方法

                  System.out.println("姓名:" + this.getName() + ",年龄:" + this.getAge()) ;

           }

           public void setName(String n){

                  name = n ;

           }

           public void setAge(int a){

                  if(a>=0&&a<=200){

                         age = a ;

                  }

           }

           public String getName(){

                  return name ;

           }

           public int getAge(){

                  return age ;

           }

    };

    public class OODemo10{

           public static void main(String args[]){

                  Person per = new Person() ;  // 实例化对象

                  per.setName("张三") ;           // name属性赋值

                  per.setAge(-30);

                  per.tell() ;

           }

    };

    通过间接地方式访问和设置私有属性。方法也可以用private修饰,但是此方法只能在类的内部进行访问,外部无法调用。

    (2)类的图形表示

    在开发类的时候将类用图形的方式展现给用户

     

     

     

     

     

    例如:Person类的图形表示

    属性的表示格式:访问权限  变量名称:数据类型

      "-":减号表示private权限

    方法的表示格式:访问权限  方法名称(参数名称:参数的类型,)返回值类型

      "+":加号表示public权限

         Person

     

     


     

     

     

     

     


                               

     

     

    PowerDesigner工具的应用 

  • 相关阅读:
    eval(data)和eval("("+data+")")的区别
    来自 119.*.*.*的回复: TTL 传输中过期
    小伙伴们,我们一起奋斗吧
    计算机专业学习课程推荐
    sysbench使用教程【转载】
    Docker学习笔记 — Docker私有仓库搭建【转载】
    Linux设置静态IP【转】
    聊一聊PV和并发、以及计算web服务器的数量的方法【转】
    Linux常用Shell脚本珍藏【转载】
    戏说云计算之PaaS,IaaS,SaaS【转载】
  • 原文地址:https://www.cnblogs.com/jinzhengquan/p/1941526.html
Copyright © 2011-2022 走看看