一、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. BZOJ_1031_[JSOI2007]_字符串加密_(后缀数组)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1031 长度为n的字符串形成环,枚举开头位置,得到n个长度为n的串,将这些串排序,然后按照顺序输 ...

  2. apache开源项目--ApacheDS

    ApacheDS (Apache Directory Server)的核心是目录服务,可以保存数据,并对不同类型的数据进行搜索操作.协议的实现在目录服务器顶层工作,提供与数据存储.搜索和检索有关的 I ...

  3. 【转】编译Android系统源码和内核源码

    原文网址:http://blog.csdn.net/jiangwei0910410003/article/details/37988637 好长时间没有写blog了,之所以没有写,主要还是工作上的事, ...

  4. Cgroups概述

    1. Cgroups是什么? 从 2.6.24 版本开始,linux 内核提供了一个叫做 Cgroups的特性.Cgroups是control groups的缩写,是一种可以限制.记录.隔离进程组(p ...

  5. show slave status中的log_file / log_pos

    在MySQL的master-slave或dual master的架构中,我们经常使用show slave status命令来查看复制状态. 这里涉及几个重要的日志文件和位置: Master_Log_F ...

  6. opencv 在工业中的应用:圆孔定位

    在工业中产品或者夹具上经常有圆形孔,我们可以利用这些孔来对产品或者夹具进行定位.我用OPENCV写了个DEMO 程序,介绍如下: (1)首先点击打开图像按钮打开一幅图像 (2)进行一些参数设置 (3) ...

  7. 在MFC框架中使用OpenGL的简单实例

    引言 我们知道,在MFC框架中,用于绘图的接口是GDI.但GDI只能绘制简单的2D图形,要想制作精美的3D图形,一个可行的办法是使用OpenGL或者Direct3D等第三方库. 由于最近在给导师的一个 ...

  8. 使用 EasyBCD 安装Ubuntu 14.04 Error 15: file not found错误的解决方法

    今天安装Window7 和 Ubuntu 14.04 双系统时,出现如下异常,记录一下. 安装过程是参考 http://www.linuxidc.com/Linux/2014-04/100369.ht ...

  9. 问题:如何在固定大小的DIV层插入N多个图片

    这是贴友问的一个问题,具体需求是: 如何在固定大小的DIV层插入N多个图片,使其一行排列,超出层宽时出现滑动条? 原以为利用overflow属性可以实现,但是测试失败.后来利用div层叠实现了效果. ...

  10. POJ 2429

    思路:a/n*b/n=lcm/gcd 所以这道题就是分解ans.dfs枚举每种素数情况.套Miller_Rabin和pollard_rho模板 //#pragma comment(linker, &q ...