面向过程和面向对象的区别。(5 分)
面向过程就好像:一位父亲吩咐自己8岁的小儿子去买啤酒。
他需要考虑儿子从出门后的每一个步骤,叮嘱儿子出门怎么走,如何过马路,到了超市如何找到酒水区,怎么识别需要的品牌,最后去哪里找收银员付账,付账时要注意找零不要出错,回来时过马路要等红绿灯等等各种细节都需要一一考虑到;
面向对象就像:还是这位父亲10年后吩咐18岁的儿子再去买啤酒。
这一次,他只说了一句,儿子今晚我们喝青岛啤酒,去买点儿回来。18岁的儿子10分钟不到就买回来了啤酒。
因此可以认为:面向过程是以一种过程的思维处理问题;面向对象着眼于宏观面,只关注问题的结果,而不再需要处理问题面下的微观细节。但是二者又是相辅相成紧密联系,面向对象是建立在面向过程的基础上,如同一个人由未成年时买啤酒的踽踽独行,到走向成年后买啤酒的游刃有余,面向对象是由面向过程逐渐演变发展而来的。同时,现在很多面向对象的问题在处理细节时,仍然需要采用面向过程的方式。

2.类和对象的关系
类和对象就在生活中随处可见。
如:人 是一个类,而美国总统欧巴马是 人 这个类的一个对象;美国著名演员布拉德皮特也是 人 这个类的一个对象;历史上的巨人 牛顿 也是 人 这个类的一个具体对象;人类历史长河中每一个具名的人都是 人 这个类的具体对象。
而 人 这个类是对这些所有具体对象的共同特征的一个抽象,有共同的静态属性如:肤色、国籍、年龄、直立行走的动物、情商、智商等等;还有一些共同的动态属性:说话、学习、唱歌、跳舞等等。
即:类是对一些具有共同特征的具象实物的抽象概括;
对象则这个类下的一个个具体的实物。

3. 构造方法的作用和特征
构造方法的作用:给对象赋初始值;
特征:
1)和类名完全一致;
2)构造方法不能写返回值;
3)当类中没有显示提供无参构造方法时,系统将默认提供一个无参的构造方法;
4)当有重载的构造方法时,系统将不再提供无参数的构造方法,创建对象时,如果用到了无参数的构造方法,则需要程序员在该类中显式的提供一个无参的构造方法;
5)一个类中至少有 1 个构造方法。

4.this 关键字的作用和用法
1)this关键字的作用:
当成员变量与局部变量重名时,需要用this关键字来确定成员变量。
2)this关键字的用法:
成员变量前加this,表示当前对象的成员变量。
在类中调用成员方法时,this可以省略;当方法中不存在与成员变量同名的局部变量时,成员变量前的this也可以省略。
使用this调用构造方法时,该语句只能是第一条语句;
而且只能通过this调用构造方法一次。

5. 简述 static 关键字的作用。
Static 关键字可以用来修饰成员变量、方法、代码块、内部类以及import 包。
1.static变量
1)static变量只能是成员变量
2)static变量是所有对象共同拥有的一个变量,在类第一次被加载时创建,且只创建一次。
3)static变量被分配在方法区的一块内存中
4)static变量可以被非static方法访问,访问方式:类名.变量名或者对象名.变量名。
2.static方法
1)static方法的作用是访问并操作静态成员,包括静态方法和静态变量
2)static方法的访问方式:类名.方法名() 或者 对象名.方法名()
3)在static方法中,不可以使用this关键字,也不可以访问非静态的成员,包括非静态的成员变量和非静态的方法,原因是:在static方法访问非静态的成员时,其有可能在内存中尚未被分配空间,即非静态成员在创建时间上晚于静态成员。
4)在非静态的方法中,可以访问静态的成员,包括静态成员变量和静态方法,原因是:静态的成员在创建时间上要早于非静态成员。
3.static代码块
1)静态代码块可以有1个或者多个;
2)静态代码块会在类第一次被加载时被执行,且只执行一次,执行顺序是自上而下依次顺序进行,若其被定义在构造方法之前,那么它也会在构造方法之前执行;
4)在静态代码块中可以访问当前类中所有的成员;
5)语法作用是 给静态变量赋初始值,调用静态方法;
4.static import语句
由static修饰import语句时,导入的是某个类中的所有静态成员变量和静态方法;
5.static修饰内部类,还没学,后续补充。

尚学堂 JAVA DAY12 概念总结的更多相关文章

  1. 尚学堂 JAVA DAY11 概念总结

    1.冒泡排序算法 <升序排列> 思路1: 数组长度为n,那么要对数组进行n-1次遍历; step 1---从数组的第一个数开始,两两比较,如果第一个数 > 第二个数,将二者进行交换: ...

  2. 尚学堂 JAVA Day3 概念总结

    java中的运算符 1.算术运算符 + - * / % Arithmetic operators + 运算符有三种身份 Additive Operator 1)加法:如 a + b; 2)连接:如 “ ...

  3. 尚学堂 JAVA Day1 概念总结

    1.什么是计算机语言?一些符号,这些符号按照计算机硬件结构可以理解的方式排列组合,方便人与计算机,计算机与计算机之间进行信息的交换. 2.什么是机器语言?就是简单的二进制0和1的组合.该语言是计算机硬 ...

  4. 尚学堂 JAVA DAY12 java程序执行时内存的分配

  5. 尚学堂JAVA基础学习笔记

    目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...

  6. 尚学堂Java第一课

    今天是北京尚学堂郑州分校开课的第一天,小班面授教学. 我很兴奋,是一个小白对IT大神渴求传道授业解惑的兴奋. 杨老师还是一贯耐心详细的手敲了第一堂课的完整大纲,必须给杨老师赞赞赞!!! 从幽默的制定班 ...

  7. 尚学堂Java面试题整理

    博客分类: 经典分享   1. super()与this()的差别? - 6 -  2. 作用域public,protected,private,以及不写时的差别? - 6 -  3. 编程输出例如以 ...

  8. 尚学堂java答案解析 第一章

    本答案为本人个人编辑,仅供参考,如果读者发现,请私信本人或在下方评论,提醒本人修改 一.选择题: 1.C 解析:java为了安全,中并没有引入C语言的指针概念. 2.AD 解析:B:Java先通过ja ...

  9. 尚学堂 JAVA Day13 abstract 关键字

    Abstract (抽象的) 这是一个关键字. 可以且只可以 用来修饰 <类> <方法>. 1---Abstract 类 如:Animal,可以被理解一个抽象的类.动物嘛,只是 ...

随机推荐

  1. Activity Threa创建Window和View分析

    http://blog.csdn.net/ljsbuct/article/details/7094580 1. 入口. 以前一直都说Activity的人口是onCreate方法.其实android上一 ...

  2. Wireshark提示没有一个可以抓包的接口

    这是由于win下默认NPF服务是关闭的,需要以管理员的身份开启这个服务 Windows上安装wireshark时,会遇到NPF驱动无法启动的情况,一般如果采用管理员的方式就可以正常启动,或者是将NPF ...

  3. [总结]FFMPEG视音频编解码零基础学习方法

    在CSDN上的这一段日子,接触到了很多同行业的人,尤其是使用FFMPEG进行视音频编解码的人,有的已经是有多年经验的“大神”,有的是刚开始学习的初学者.在和大家探讨的过程中,我忽然发现了一个问题:在“ ...

  4. 段落排版--行间距, 行高(line-height)

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...

  5. SGU 220.Little Bishops(DP)

    题意: 给一个n*n(n<=10)的棋盘,放上k个主教(斜走),求能放置的种类总数. Solution: 一眼看上去感觉是状压DP,发现状态太多,没办法存下来... 下面是一个十分巧妙的处理: ...

  6. 【POJ3468】【zkw线段树】A Simple Problem with Integers

    Description You have N integers, A1, A2, ... , AN. You need to deal with two kinds of operations. On ...

  7. 性能测试实践-linux

    需求:线上系统性能优化,查找服务器和线上系统瓶颈 根据线上经验数据及期望值定量 数据   up down 线上数据 50 500 测试数据 100 500~2000+ 测试数据 200 500~200 ...

  8. js控制 点一下增加一个输入框,点一下增加一个输入框……

    <div> <div> 附件1:<input type="file" id="file1" name="file1&qu ...

  9. glide简介

    golang包管理工具glide简介   golang包管理工具glide简介 前言 golang是一个十分有趣,简洁而有力的开发语言,用来开发并发/并行程序是一件很愉快的事情.在这里我感受到了其中一 ...

  10. Apache虚拟站点配置

    简单虚拟站点配置: <VirtualHost 127.0.0.2:80> DocumentRoot E:/wamp/www/yue ServerName 127.0.0.2:80</ ...