一、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. 关于高斯消元解决xor问题的总结

    我觉得xor这东西特别神奇,最神奇的就是这个性质了 A xor B xor B=A 这样就根本不用在意重复之类的问题了 关于xor的问题大家可以去膜拜莫队的<高斯消元解XOR方程组>,里面 ...

  2. Spring--通过注解来配置bean

    Spring通过注解配置bean 基于注解配置bean 基于注解来配置bean的属性 在classpath中扫描组件 组件扫描(component scanning):Spring能够从classpa ...

  3. Java多线程同步——生产者消费者问题

    这是马士兵老师的Java视频教程里的一个生产者消费者问题的模型 public class ProduceConsumer{ public static void main(String[] args) ...

  4. codeforces 671B Robin Hood 二分

    题意:有n个人,每个人a[i]个物品,进行k次操作,每次都从最富有的人手里拿走一个物品给最穷的人 问k次操作以后,物品最多的人和物品最少的人相差几个物品 分析:如果次数足够多的话,最后的肯定在平均值上 ...

  5. 线性表-串:KMP模式匹配算法

    一.简单模式匹配算法(略,逐字符比较即可) 二.KMP模式匹配算法 next数组:j为字符序号,从1开始. (1)当j=1时,next=0: (2)当存在前缀=后缀情况,next=相同字符数+1: ( ...

  6. #pragma warning (default : n)

    参考链接:http://www.cnblogs.com/JCSU/articles/1996483.html 在VC2013中编译以下win32 C++ 控制台程序,会产生2个告警warnings # ...

  7. ado.dataset

    DataSet是ADO.NET的中心概念.可以把DataSet当成内存中的数据库,DataSet是不依赖与数据库的独立数据集合.所谓独立,就是说,即使断开数据链路,或者关闭数据库,DataSet依然是 ...

  8. PHP常用的基本文件和目录操作总结

    来源:http://www.ido321.com/835.html 一.基本文件的操作 文件的基本操作有:文件判断.目录判断.文件大小.读写性判断.存在性判断及文件时间等 1: <?php 2: ...

  9. Hander

    多线程与UI线程间通信 向你展示如何从任务发送数据对象上运行用户界面(UI)线程.该特性允许你的任务做背景的工作结果,然后再到UI元素如位图. 每个应用程序都有自己的特殊的线程运行的UI对象如视图对象 ...

  10. acm-DP整理

    一.背包 .各种01背包 void leastOne_Pack(int id, int num ) {//至少取一个: int i, j, c, v ; ; i <= num ; i ++ ) ...