一 SE的知识体系:

  1. java基础:
    1. 一基础语法
      1. 8个基本数据类型——>8个包装类
      2. 数据类型转换:
        1. 自动转换(从小到大)
        2. 强制转换(从大到小)
        3. 注意:int 和char
      3. 分支与判断:
        1. if(){}
        2. if (){}else{}
        3. if(){}else if(){}...else{}//多次判断
        4. if(){if(){}}else{}  //嵌套判断
        5. 判断条件 ?表达式1 :表达式2;//三目运算
        6. switch(变量:int byte  enum char String){case : ; break;}    注意: break的使用!
        7. 循环:(重点,必须掌握)
          1. while
          2. do while
          3. for
          4. for(数据类型 变量: 数组或集合)(foreach)                                                        例如:以下的代码不推荐(效率低)                                                                          for(int i=0;i<list.size;i++){                                                                                     list.get(i);                                                                                                 }                                                                                                                    //以上的代码应改为(效率高)                                                                      int  size = list.size();                                                                                      for(int i=0;i<size;i++){                                                                                         list.get(i);                                                                                                }
        8. 数组:是引用类型
          1. 特点:内存连续、通过下标操作、数据类型相同
          2. int[] arr = new int[];
          3. int[] arr = {2,3,4,4};
          4. int[] arr = new int[]{1,2,3};
    2. 类与对象:
      1. 对象:是一个具体的拥有一个特征和行为的事物。
      2. 类:是抽象的,某些具有相同的特征和行为的实务的集合(抽象)。
      3. 类是模板,对象是通过类创建出来的。
      4. java的程序的最小单位是类。
      5. 类的构成:
        1. 属性
          1. 读写属性(常用的)
          2. 只读(保护)
          3. 只写(隐藏:安全)
          4. 静态属性(类属性)
        2. 方法
          1. 实例方法
          2. 类(静态)方法
          3. 构造方法
          4. 注意:1:无返回值   2:名称与类同名    3:不能显示调用
          5. jvm提供一个默认构造器,一旦声明带参构造,默认构造就不存在
          6. 抽象方法
            1. 特点:没有方法体(实现)
            2. 作用:让方法重写
          7. 本地方法(native:调用本地api)
          8. 代码块
            1. {}//构造块
            2. static{//静态块}

当我们创建(实例化)对象时,先执行类加载器(把要创建的类的对应的class文件加载到内存中,jvm完成对class文件的检验工作),首先执行静态块,然后执行构造块,最后执行构造器。

A  a = new A();

class A{

static{

//静态块:只执行一次且在类被加载后马上执行

//优先于构造块

//全局的且比较消耗资源的:例如数据库连接

}

{

//构造块,每次创建对象时,都会调用

//优先于构造方法执行的

}

public void show(){

A a = new A();

a.show();

disp();//OK

//A();//显示调用构造器,错误!

}

public static void disp(){

A.disp();

show();//不能: 静态只能访问静态

}

}

2、二  面向对象:

  1. 封装:隐藏代码实现
  2. 继承:代码重用
  3. 多态:多种实现
    1. 封装通过private且提供对应的get和set方法
    2. 类就是对数据和操作的封装
    3. 继承的实现:通过extends实现
    4. 继承是 is a的关系
      1. 继承的注意:
        1. 子类会继承父类(除构造)以外的所有成员(包括私有的)。
        2. 子类就可以对父类的方法进行Override(重写)
        3. 子类要比父类"大"(子类包含父类)
        4. 父类与子类存在的类型转换(向下转型)instanceof
        5. 子类在访问父类的protected的属性和方法时,不能通过父类的引用进行调用,可以使用this或super直接调用
        6. java的继承是单根继承(一个类最多只能有一个父类,一个父类可以有多个子类)
        7. 当使用父类的引用创建子类对象时(多态的调用),此时调用的发放是子类的
        8. 属性是不支持重写的!

JavaSE的知识的更多相关文章

  1. JavaSE基础知识总结

    最近回顾了一下Java的基础知识,决定写成博客梳理一遍,主要是JavaSE部分最基础的知识,适合考前突击,学后回顾,不适合作为初学材料. 简单的列个目录吧: 一.数据类型和运算符 二.流程控制与数组 ...

  2. JavaSE核心知识

    一:Java简介 1. Java语言的介绍:Java是一门面向对象编程语言,具有功能强大和简单易用两个特征. 2. Java语言的特点:简单性.面向对象.分布式.健壮性.安全性.平台独立与可移植性.多 ...

  3. JavaSE基础知识(1)—初识Java

    一.JAVA的背景 JAVA本身隶属的公司的是sun公司(创始公司) JAVA创始人:詹姆斯 高斯林 09年被oracle收购 JAVA的前身是Oak 二.JAVA的版本 95年 JAVA诞生96年 ...

  4. JavaSE 基础知识(常识概念 + 基础语法)问答总结/面试题 —— 讲给应届生的 Java 开源知识项目

    写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...

  5. javaSE基础知识(走向编程的门口)— 更新完毕

    前言:玩儿编程最重要的一点:不要怕麻烦,感觉是在浪费时间: 能动手绝不哔哔:只要脑袋不傻,编程都是"一看就会,一练就废",开始学的时候,就算再基础的东西都建议手敲一遍 要有囫囵吞枣 ...

  6. javaSE基础知识

    JVM,JRE,JDK三者的简单总结 1.见名解释 Java虚拟机(JVM):Java virtual machine简称JVM:“virtual”中文意思“虚拟的”,“machine”中文意思“机器 ...

  7. JavaSE基础知识(7)—常用类

    一.包装类 1.理解 java为八大基本数据类型一一对应提供了引用类型,方便使用里面的属性和方法 2.包装类型 byte——>Byteshort——>Shortint——>Integ ...

  8. JavaSE基础知识(6)—异常和异常处理

    一.异常的理解及体系结构图 1.理解 异常:程序运行过程中发生的不正常现象.java中的错误: 语法错误 运行异常 逻辑错误 2.体系图 java程序在执行过程中所发生的异常分为两类: Error:J ...

  9. JavaSE基础知识(5)—面向对象(抽象类和接口)

    一.抽象类 1.理解 用abstract关键字定义的类,称为抽象类用abstract关键字定义的方法,称为抽象方法意义:当设计父类时,发现该父类根本不需要创建对象,并且里面有不好描述的方法.这个时候往 ...

随机推荐

  1. spring实战六之使用基于java配置的Spring

    之前接触的都是基于XML配置的Spring,Spring3.0开始可以几乎不使用XML而使用纯粹的java代码来配置Spring应用.使用基于java配置的Spring的步骤如下: 1. 创建基于ja ...

  2. Codeforces Round #331 (Div. 2)

    水 A - Wilbur and Swimming Pool 自从打完北京区域赛,对矩形有种莫名的恐惧.. #include <bits/stdc++.h> using namespace ...

  3. MVC 路由模块分析(一)

    概述 主要分为四个部分进行分析. First ——Usage: then ——Extension: and then ——Design: last ——Test. 1. Usage 1.1 Displ ...

  4. 核反应堆[HDU2085]

    核反应堆 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  5. Travelling

    Travelling Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  6. linux安装apache的纠结过程

    本以为linux下安装apache是件很简单的过程.三命令就可以搞定,jxvf解压,make 编译,make install 安装就OK了.没想到这个过程还颇费周折.可能和环境有关吧.先说一下我的环境 ...

  7. 【wikioi】1922 骑士共存问题(网络流/二分图匹配)

    用匈牙利tle啊喂?和网络流不都是n^3的吗(匈牙利O(nm), isap O(n^2m) 但是isap实际复杂度很优的(二分图匹配中,dinic是O(sqrt(V)*E),不知道isap是不是一样. ...

  8. 【wikioi】1217 借教室

    题目链接http://www.wikioi.com/problem/1217/ 算法:二分答案(线段树可过wikioi数据) 二分:http://www.wikioi.com/solution/lis ...

  9. 原创Java版的Shell

    如果你接触过windows操作系统,你应该对windows中的cmd有一定的了解. 如果你接触过Linux操作系统,你应该对Linux的shell有一定的了解. 本文说的正是linux中的shell. ...

  10. mysql中datetime比较大小问题 (转的)

    方法一: 你也可以:select * from t1 where unix_timestamp(time1) > unix_timestamp('2011-03-03 17:39:05') an ...