一、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. bzoj1934 bzoj2768

    最小割的经典模型,体现出最小割的基本定义,把两个集合划分的最小代价 把一开始同意的人连源点,不同意的连汇点,有关系的人之间连边,流量都为1 不难发现,割两点(人)间的边就相当于朋友之间发生冲突 割到连 ...

  2. MySql命令的基本操作

    MySQL的基本命令: 登录:mysql  -h -u root -p password:*****; 例如:mysql -h127.0.0.1 -uroot -p 增加一个用户: grant all ...

  3. SPOJ DQUERY:D-query

    主席树/树状数组.给一个区间,多次询问[l,r]内有多少个不重复的元素.每个前缀都建线段树,询问直接r的[l,r]就可以了.(似乎对主席树有一点了解了?...话说spoj好高级的样子... #incl ...

  4. BZOJ3258: 秘密任务

    题解: 其实就是一个简单的最小割判断是否唯一解... 可是我写了一上午还没过...T_T 把1-n的最短路上的边提出来做最小割. 然后从s,t分别bfs判断必须在某个割的点.如果有的点没有被bfs到, ...

  5. 选择select框跳出信息

    <html > <body > <select type="select" name=s1 onChange=alert("你选择了&quo ...

  6. Spring注释@Qualifier

    在学习@Autowired的时候我们已经接触到了@Qualifier, 这节就来详细学习一下自定义@Qualifier. 例如定义一个交通工具类:Vehicle,以及它的子类Bus和Sedan. 如果 ...

  7. HUST 1017 Exact cover dance links

    学习:请看 www.cnblogs.com/jh818012/p/3252154.html 模板题,上代码 #include<cstdio> #include<cstring> ...

  8. sublime3安装python插件 -- SublimeCodeIntel

    先装Package Control,类似pip的一个索引安装工具. 1.http://sublime.wbond.net/Package%20Control.sublime-package 2.sub ...

  9. faplayer编译配置经验

    最近在做在线m3u8类格式的视频直播应用, 在获取m3u8的文件之后,如果采用Android系统播放器来播,会有各种各样的问题,容易卡死.不连续,也不能自定义一些选项.查找资料以后,决定采用fapla ...

  10. Ngrok,一款可以帮助你展示网站和联网开发的工具

      使用Ngrok的目的就是为了可以让别人通过网络访问到自己本机上的项目 下面是一个简单的使用教程,详细的查看官网英文文档. 第一步: 登录官网:https://ngrok.com/   注册或者登录 ...