面向对象
    编程本质:以类的方式组织代码,以对象的方式组织(封装)数据
对象具体的事物,某个类的对象(实例)
类:是对对象的抽象,用于描述同一类型的对象的一个抽象概念

对象和类的关系:特殊到一般,具体到抽象

三大特征:
        封装
        继承
        多态
构造器:又叫构造方法(constructor),用于构造类的实例
    格式:修饰符 类名(形参列表){
            //语句
    }       
         构造器的方法名与类名一致
        通过new关键字调用
        当没有定义构造方法时,系统会自定义一个无参构造函数
        构造方法可以重载
作用:构造该类的对象,初始化对象的属性
ps:一旦显示的写了一个构造方法,则默认的构造方法就不在存在
 
static关键字:
    特点:
            随着类的加载而加载
            优先于对象存在
            被所有对象所共享
            可以直接被类名调用
  静态(static)方法不能直接使用外面定义的非静态方法和非静态属性,可以new一个对象实例来访问非静态方法(属性),但非静态方法可以直接访问静态成员,静态方法不可以使用this,super关键字
 
没有使用static修饰的方法或字段,属于对象,可称为实例成员
使用static修饰的方法或字段,属于类,可称为类成员
 
调用:
    若是实例成员:只能通过对象来调用
    若是用static修饰的字段或方法,即类成员,可以使用类名来调用,也可以使用对象来调用。由于在底层,对象调用类成员,也会转成类名调用,所以使用类名调用比较好 
 
在JVM中有一块区域专门用来存储static修饰的成员叫静态存储区域
 
static比较耗性能,因为每次加载类成员的时候都要开辟空间而实例成员只有在创建的时候需要开辟空间
 
匿名对象:
    特点:
        对方法或字段只进行一次调用
        可作为实际参数作为传递
        只在堆内存中开辟空间,而没有在栈内存的引用
 
 
三大特性之一封装:
        1》把对象的状态和行为看成一个统一整体,将二者存放在一个独立 的模块中(类)
        2》“信息隐藏”,把不需要让外界知道的信息隐藏起来,尽可能隐藏对象功能实现细节、字段
封装机制在程序中体现:把描述对象的状态用字段表示,描述对象行为用方法表示,把字段和方法定义在一个类中,并保证外界不能任意改变其内部值,也不允许任意调动其内部的功能方法。
程序中的一种体现:通过类中成员变量私有化(private);通过对外提供getter、setter方法,可对私有化成员变量进行访问。
getter方法,用于获取私有化变量的值。
    格式:
        【非私有修饰符】 字段类型 get字段名(){
                            return 字段名;
                }
setter方法,用于设置私有化成员变量的值
    格式:
        【非私有修饰符】 void  set字段名(字段类型  变量){
                             字段 = 变量;
                }

面向对象三大特征之封装与static——(Java学习笔记四)的更多相关文章

  1. Java学习:面向对象三大特征:封装、继承、多态之封装性

    面向对象三大特征:封装.继承.多态. 封装性在Java当中的体现: 方法就是一种封装 关键字private也是一种封装 封装就是将一些细节信息隐藏起来,对于外界不可见. 问题描述:定义Person的年 ...

  2. Java学习:面向对象三大特征:封装性、继承性、多态性之多态性。

    面向对象三大特征:封装性.继承性.多态性之多态性. extends继承或者implemens实现,是多态性的前提. 例如:小菜是一个学生,但同时也是一个人.小菜是一个对象,这个对象既有学生形态,也有人 ...

  3. OOP面向对象 三大特征 继承封装多态

    OOP面向对象 ----三大特征 继承封装多态 面向对象(Object Oriented,OO)是软件开发方法.面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统.交互式界面.应用结构 ...

  4. JavaSE基础知识(5)—面向对象(5.4面向对象三大特征:封装、继承、多态)

    面向对象编程具有三大特征: 封装 继承 多态 一.封装 1.好处 狭义的封装:也就是属性的封装,避免了任意赋值的危险,提高了数据的安全性! ①隐藏一个类中不需要对外提供的实现细节 ②使用者只能通过实现 ...

  5. Java学习笔记四---打包成双击可运行的jar文件

    写笔记四前的脑回路是这样的: 前面的学习笔记二,提到3个环境变量,其中java_home好理解,就是jdk安装路径:classpath指向类文件的搜索路径:path指向可执行程序的搜索路径.这里的类文 ...

  6. java之面向对象三大特征(封装,继承,多态)

    一.封装 封装是指将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类提供的对外方法进行内部信息的操作和访问. 封装可以达到以下目的: 1)隐藏类的实现细节 2)让使用者只 ...

  7. 简述Java面向对象三大特征:封装、继承、多态

    封装: 把对象的全部属性和服务结合在一起,形成不可分割的独立单位: 尽可能隐藏内部细节.(数据隐藏.隐藏具体实现的细节)     public.private.protected.default pu ...

  8. Java学习笔记四

    1.简介.进程和线程:简单的说就是进程负责为程序开辟内存空间,线程负责具体的执行单元(执行路径). 一个进程中可以有多个执行路径,称为多线程.CPU一次只能执行一个进程,但是一个进程内部可以有多个线程 ...

  9. Java学习笔记四——运算符

    算术运算符 加减乘除(+.-.*./)就不说了. 求余运算符% 描述:第一个操作数除以第二个操作数,得到一个整除的结果后剩下的值就是余数 注意:求余预算的结果不一定总是整数,当操作数是浮点数时,结果可 ...

随机推荐

  1. HDU 2815 Mod Tree 离散对数 扩张Baby Step Giant Step算法

    联系:http://acm.hdu.edu.cn/showproblem.php?pid=2815 意甲冠军: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQ ...

  2. ViewData ViewBag ViewModel

    ViewBag 里可以携带dynamic的数据. Model 是从control传过来的模型数据. 我自己感觉ViewBag 可以携带少量的数据,但是我同事喜欢部分页partial 请求,ViewBa ...

  3. Java中导入、导出Excel

    原文:Java中导入.导出Excel 一.介绍 当前B/S模式已成为应用开发的主流,而在企业办公系统中,常常有客户这样子要求:你要把我们的报表直接用Excel打开(电信系统.银行系统).或者是:我们已 ...

  4. IDF - CTF - 牛刀小试

    找学校CTF好地方,IDF实验室CTF训练营(http://ctf.idf.cn/). . 刚接触CTF.来玩下牛刀小试.AK了. . 好爽好爽.. 1.摩斯password 嘀嗒嘀嗒嘀嗒嘀嗒 时针它 ...

  5. 系列二VS项目软件配置工具介绍

    原文:系列二VS项目软件配置工具介绍 Svn和VisualSvn介绍 在使用TortoiseSvn(SVN客户端)+ AnkhSvn(VS2008插件) +VisualSvn Server(版本控制服 ...

  6. 如何嗅闻交换网络和ARP骗子-ARP解释的原则

    在嗅探以太网(一般指嗅探器可以对流经的网络数据包窃听)(sniff)不为网络安全是好事,虽然网络管理员能够跟踪数据包,发现 互联网问题,但前提是,如果破坏者使用.在整个网络带来了严重的安全威胁. 至于 ...

  7. 微服务API Gateway

    翻译-微服务API Gateway 原文地址:http://microservices.io/patterns/apigateway.html,以下是使用google翻译对原文的翻译. 让我们想象一下 ...

  8. SQLServer数据类型优先级对性能的影响

    原文:SQLServer数据类型优先级对性能的影响 译自: http://www.mssqltips.com/sqlservertip/2749/sql-server-data-type-preced ...

  9. HTML5中类jQuery选择器querySelector的高级使用 document.querySelectorAll.bind(document);

    基本用法 querySelector 该方法返回满足条件的单个元素.按照深度优先和先序遍历的原则使用参数提供的CSS选择器在DOM进行查找,返回第一个满足条件的元素. ----> querySe ...

  10. Team Foundation Server 2015使用教程--默认团队权限说明