一、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. windows ssh RPi 2B

    /************************************************************************* * windows ssh RPi 2B * 声明 ...

  2. Zen Coding support in WebStorm/PhpStorm

    With the last WebStorm/PhpStorm EAP you can edit HTML and CSS code really fast usingZen Coding featu ...

  3. 根据IP地址查询所在地

    using System; using System.Collections.Generic; using System.Text; using System.IO; using System.Tex ...

  4. SGU 134 Centroid

    题意:给出一个树,每个点有一个value,value的意义是去掉这个点之后所有连通分量中点最多的那个连通分量的点数,这棵树的重心为所有点value的最小值,求重心,及重心都有谁. 解法:貌似是个树形d ...

  5. Javascript 知识点简介

    如何在HTML中引入JS? 所有重定向的HTML标签内都可以嵌入javascript代码. 浮点数不要用 == 来进行判断 var num=0;    for(var i=0;i<10;i++) ...

  6. Mac OS 终端常用命令【搜藏】

    基础概念 OS X 采用的Unix文件系统,所有文件都挂在跟目录“ /” 下面,所以不在要有Windows 下的盘符概念.比如什么“C:”你在桌面上看到的硬盘都挂在 /Volumes 下.比如接上个叫 ...

  7. Ubuntu firefox falsh

    Ubuntu下为Firefox安装Adobe Flash Player   使用环境:     OS:Ubuntu 12.04 LTS     Browser: Firefox 12.0     Ad ...

  8. 打印出从1到最大的n位十进制数

    首先这一题会溢出,要考虑的大数问题.所以不能用简单的是int类型数来表示(32位无符号int 范围是0x00000000···0xFFFFFFFF),下面主要是非递归的实现代码,自己做了注释方便以后回 ...

  9. NOIP2012 国王游戏

    2国王游戏 (game.cpp/c/pas) [问题描述] 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数 ...

  10. 2014上海网络赛 HDU 5053 the Sum of Cube

    水 #include <stdio.h> #include <stdlib.h> #include<math.h> #include<iostream> ...