一、Java基础

1、Java概述

Java语言特点:

 
                  简单性、解释性、面向对象、高性能、分布式处理
 
                  多线程、健壮性、动态、结构中立、安全性、开源、跨平台
 
          jre: Java runtime Environment java运行时环境
 
          JDK:Java Development kit  java开发工具包
 
          JVM: Java Virtual Machine  不同平台虚拟机实现不同

   
    2、Java基础语法
 
           关键字: 全小写  --请看关于关键字详解
 
          标识符: 命名规则
          
     ★★  注释:   注释是一个程序员必须要具有的良好的编程习惯,
 
                   先写思想,再写代码,因为代码只是思想的一种体现形式,
 
                   可能还有很多更好的其他解法,这样就能方便以后重构
 
                  //将项目需求先写在注释上;
 
                  //将自己的解题思路分步骤整理在注释部分;
 
                  //将调试的bug及解决方法写在注释部分;
 
                  //将重要代码、核心代码功能注释出来;
 
          常量:  字面值常量:
                 自定义常量:
          进制:  原码、反码、补码; 进制转换
          变量:
          数据类型:
                   基本数据类型: byte, short, int, long, float, double
                                 char, boolean, 
                   引用数据类型: 类, 接口, 数组
                   String类型是引用类型,然而这个引用类型比较特殊,
 
                           它指向一个字符串,这个字符串的值不能够改变。
 
          强制类型转换:(如果不损失精度,编译器可以帮助强转,)
                       (如果损失精度,必须显示强转)
 
                       站在编译器的角度思考,能理解很多问题的根源
 
          运算符: 算术、赋值、比较、逻辑、位、三目运算符
 
          流程控制: 顺序结构、选择结构(case穿透)、循环结构
                    break、continue
                    当不明确循环次数时,使用while循环
 
          方法: 不可以嵌套
 
          数组: 数组别名问题
                 栈存储局部变量
                 堆存储新建对象
 
二、面向对象
 
          1、三大特性:
                封装:
                      访问控制: public:
                                protected:所有子类、或同包的类可以访问
                                private:
                                package:不写修饰符,默认包可访问
                继承:在执行子类构造函数之前会默认执行父类的构造函数
 
                      用super()显示调用父类的构造函数
 
                      super关键字可以在任意非静态方法中调用父类属性
                多态:
                      前提条件: 要有继承关系、
 
                                要有方法覆盖、
 
                                要有父类引用指向子类对象
                           
                      覆盖 子类覆盖父类方法, 运行时多态
 
                      重载 同一类中参数不同的同名方法, 编译时多态
 
                           多态中成员访问的特点:成员变量、成员方法
 
                           理解在内存中的存放状态
          
                      instanceOf   向下转型是判断某个对象是否属于某个类
 
           
         2、抽象类:  抽象方法不能有方法体
 
         3、接口: 可以理解为技能类,或功能类,谁都可以实现
 
                  接口中所有的方法都是抽象方法
 
                  接口可以多继承
 
                  接口中只可以出现命名常量和方法声明
                    
 
                    局部变量不初始化,编译报错
 
                    成员变量不初始化,初始为0
 
                    理解内存中栈区、堆区的工作原理就能理解所有问题的本质
 
         4、变量的作用域:
 
         5、对象的生命周期:
 
         6、成员变量的隐藏性:局部变量与成员变量同名时,成员变量在该方法体无效
 
                            this关键字
 
         7、Package属性:将相关的类或接口分组,包名表示功能或作用
 
                        解决命名冲突的问题
 
                        属性的包可见特性,     
                 
 
         8、final关键字: 常量     最终
 
                      若修饰成员变量,只能被赋值一次,不能再被改变
 
                      若修饰类,则不能被继承
 
                      若修饰方法,方法不能被覆盖     
 
          9、static关键字:
 
                   静态的成员变量、静态的成员方法,成为类的成员变量,类的方法 
 
                     在内存中只有一份,所有实例化对象共享
 
           10、命名常量:  同时由 static , final修饰,  标识符全大写
 
          11、构造方法:
 
          12、值传递和引用传递:
 
                    深刻理解内存中堆、栈的工作原理
 
 

06---Java基础、面向对象的更多相关文章

  1. java基础面向对象之类与对象

    java基础面向对象之类与对象 2017-01-14 1.面向对象的基本概念 以一种组建化的形式进行代码设计 1)在面向对象程序设计中包含有如下几种特性 •封装性:保护内部结构的安全性 •继承性:在已 ...

  2. 第二十七节:Java基础面向对象-静态,单例模式,继承详情知识点

    前言 Java基础面向对象-静态,单例模式,继承详情知识点.静态-static关键字,static变量,静态代码块,代码块(不加静态),对象创建过程,单例模式,继承. 静态-static关键字 // ...

  3. Java基础-面向对象第三大特性之多态(polymorphism )

    Java基础-面向对象第三大特性之多态(polymorphism) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.多态概述 多态是继封装,继承之后,面向对象的第三大特性,多态的 ...

  4. Java基础-面向对象第二特征之继承(Inheritance)

    Java基础-面向对象第二特征之继承(Inheritance) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.继承的概述 在现实生活中,继承一般指的是子女继承父辈的财产.在程序 ...

  5. Java基础-面向对象第一特性之封装(Encapsulation)

    Java基础-面向对象第一特性之封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.理解什么是面向过程和面向对象 面向过程与面向对象都是我们编程中 ...

  6. JAVA(一)JAVA基础/面向对象基础/高级面向对象

    成鹏致远 | lcw.cnblog.com |2014-01-23 JAVA基础 1.开发环境搭建 JAVA程序的执行流程 JAVA命令->要使用一个*.class文件(类文件)->通过c ...

  7. Java基础——面向对象

    Hello 大家好,我又来啦,今天我们来说说Java的面向对象. 还记得之前去面试几家公司的实习生职位,大部分面试官都问过我有关面向对象 的问题,不知道以后还会不会问,估计是不会了吧...(:3[▓▓ ...

  8. JAVA基础-面向对象06

    一.封装 1. 封装概念和体现 封装:包装的意思,隐藏被封装的事物的信息:生活中的包装:快递:食品:电子产品……方便:好看易用:安全: Java程序中的包装: 类:包装了同一类事物的共性信息: 函数: ...

  9. 九、Java基础---------面向对象封装、继承、多态

    封装 1.1 基本概念  封装(encapsulation)是面向对象三大特征之一,它是指将对象的状态信心隐藏在对象的内部,不允许外部直接进行访问,而是通过该类提供的方法来实现对内部信息的操作和访问. ...

  10. 面试题-Java基础-面向对象

    1.面向对象软件开发的优点有哪些? 代码开发模块化,更易维护和修改.代码复用.增强代码的可靠性和灵活性.增加代码的可理解性.面向对象编程有很多重要的特性,比如:封装,继承,多态和抽象.下面的章节我们会 ...

随机推荐

  1. [2015编程之美] 资格赛C

    #1150 : 基站选址 时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 需要在一个N × M的网格中建立一个通讯基站,通讯基站仅必须建立在格点上. 网格中有A个用户,每个 ...

  2. 随心所欲的DateTime显示格式

    任何项目,难免会碰到DateTime的显示问题,.net框架虽提供丰富多样的显示方法,但我很少使用,因老忘记细节,每次都要纠结到底月份在前还是年份在前:日期分隔符到底是“/”,还是“\”,还是“-”等 ...

  3. 第一个GTK+程序

    在这一章节中,我们将开始编写第一个GTK+程序. 超级简单的例子 我们要“制造”一个超级简单的GTK+程序.就是显示一个空白的窗口. #include <gtk/gtk.h> int ma ...

  4. Xcode中Info.plist文件各个键的作用说明【搜藏】

    Localiztion native development region --- CFBundleDevelopmentRegion 本地化相关,如果⽤户所在地没有相应的语言资源,则用这个key的v ...

  5. 设计模式_Command_命令模式

    形象例子: 俺有一个MM家里管得特别严,没法见面,只好借助于她弟弟在我们俩之间传送 信息,她对我有什么指示,就写一张纸条让她弟弟带给我.这不,她弟弟又传送过来一个COMMAND,为了感谢他,我请他吃了 ...

  6. Swift之基础知识

    Swift之基础知识 出于对Swift3.0的学习,写下这篇基本语法的笔记.希望能帮助记忆 -0- 这边提供Swift3.0中文教材,资源链接: https://pan.baidu.com/s/1c2 ...

  7. CRC(Cyclic Redundancy Check)循环冗余校验码与海明码的计算题

    (17)采用CRC进行差错校验,生成多项式为G(X)=X4+X+1,信息码字为10111,则计算出的CRC校验码是  (17)  .A.0000  B.0100   C.0010   D.1100试题 ...

  8. Pyhton 一行代码求Fibonacci第N项

    递归定义很简单,效率当然很低下,且极易超出栈空间大小. 这样做纯粹是为了体现python的语言表现力而已, 并没有任何实际意义. def fib(x): return fib(x-1) + fib(x ...

  9. NOIP2011 Mayan游戏

    3 Mayan游戏 题目描述 Mayan puzzle是最近流行起来的一个游戏.游戏界面是一个 7 行5 列的棋盘,上面堆放着一些方块,方块不能悬空堆放,即方块必须放在最下面一行,或者放在其他方块之上 ...

  10. 【poj2478】Farey Sequence

    题意: 求前n项的欧拉函数之和 题解: 预处理出所有欧拉函数 赤裸裸的模版题- - 没什么好说的 代码: #include <cstdio> typedef long long ll; ; ...