第一章

一 计算机程序:一系列有序的指令集合。

二 java语言分为三个领域

javaSE java技术核心(桌面应用程序)qq 百度云

javaEE 企业版(面向internet的应用程序)京东 淘宝

java ME (移动设备 小型嵌入开发)手机上的软件

三 java 程序 三步走

1 编写程序{程序以.java结尾}

2 编译程序(使用javac指令编译程序,编译后程序以.class结尾)

3 运行{使用java指令运行编译后的文件}

使用myeclipse开发java程序步骤

四 1 创建项目

2 编写源程序

3 编译

4 运行


public class 类名 {

}

六 内层框架

public statice void main {String[]args){

}

注意方法名必须是main 主方法四要素 public static void String[] args

输出指令 System.out.println ("男");System.out.println ("16");注意首字母要大写

println和print区别 println 输出后换行 print 只输出

/n和/t 区别 /n 换行 /t 制表位(四个字符为一个制表位)

七 注释

// 单行注释 以//开始到行末结束

/**
*
*
*/ 多行注释

/
*
*
*
/ 多行注释 多用于注释代码块

 

第二章 变量 存存储数据的基本单元

变量的声明和赋值 数据类型 变量名=数值 int price=10 声明 赋值 分 两步 int price price=-10

数据类型 基本数据类型 byte 取值范围(-2的七次方到2的七次方减-1)

short 取值范围(-2的十五次方到2的次十五方减-1)

int 取值范围(-2的三十一次方到2的次三十一方减-1)

long 取值范围(-2的6十三次方到2的次六十三方减-1)

float 浮点型 99f

double 双精度 double price=32.5

boolean

char

引用数据类型 string class 接口

 

当是多个单词组成的变量名 以 驼峰形命名法


当是多个单词组成的变量名 以 驼峰形命名法

变量命名规范 首字母 以字母 下划线 $开头

赋值运算符 是把右边的值赋予左边

算术运算符 + - * / %(取余 )

num++;//num=num+1;num+=1

num-;//num=num-1;num-=1

System.out.println(--num);//先计算在输出


System.out.println(num--);//先输出 在计算

 

 

double avg=(99+88)/3 发生自动转换 转换条件 两种类型兼容 如 int double 都是数值型

强制转换 (数据类型)变量名 )(数据类型)值

 

double num=5.5 int result=(int)num; int result=(int)5.5

第三章

保存真假 用 boolean 变量 有两个值: true 真 与 false 假

Scanner inut=new Scanner (Systenm.in); int age=input.next() //接收int类型


String name=input.next(); //接受String类型

关系运算符 > < >= <= == !=


赋值 = == 表示比较

条件判断: if(表达式 ) {语句} 当表达式为真输出

 

运算符 分为 单目: ! ++ --

双目: = + - * / % | || & &&

三目: ? : 例子 int sign=90? 1:0 ;

逻辑运算符 优先级顺序: () ! 算术运算符 比较运算符 && || 赋值运算符= 注 多使用小括号控制优先级

if(表达式) 为真 {执行语句A}

否则 else{执行B语句}

多分支: if-else if-else
if(条件1){语句1}

if(条件2){语句2}

if(条件3){语句3}

else{语句4}

switch(表达式)

{case 值1;

语句1;

break;

case 值2;

语句2;

break;

default:

语句3;

break;

}

多重if结构和switch 结构 使用场合 多重区间值 用if 等值判断 用switch

break作用跳出switch结构;

while循环 语法:while(循环条件) {循环操作}

equals 字符串比较 == 数字比较

 

do while

do{

循环操作;

} while(循环条件);

特点 先执行 后判断

调试方法 1.设置断点 2.单步运行 3.观察变量

调试步骤:

1 猜测错位置,设置断点


2启动调试,单步运行


3观察变量


4发现问题


5修正代码,重新运行


6 解决问题

for 语法 (参数初始化;判断条件;参数叠加){循环操作} 特点: 先判断后执行 顺序: 1 2 4 3

break 改变程序控制流 多用于循环中 跳出整个循环

 

continue 只能用在循环中 跳过循环体剩下语句去执行下一次循环

while do-while for 三者区别

while (判断条件) {循环操作} 先判断后先执行

do-while do{循环操作} while(条件) 先执行一次后判断

for(参数初始化;判断条件;参数叠加) {循环操作} 特点: 先判断后执行

循环次数已定用 for 不知道循环次数用while

第四章


数组 是一个变量 存储相同变量类型的一组数据

优点 减少代码量 易于查找

使用步骤

1 声明数组 int[]a 2 分配空间 a=new int[5] 3 赋值 a[0]=100 4 处理数据a[0]=a[0]+20;|

值传递 不同变量分配不同的储存空间 改变一个变量不会影响另一个变量

引用传递 把引用原对象赋予另一个引用对象 两个引用指向同一存储空间

 

二维数组 语法 数据类型 [][] 数组名 数据类型 数组名 [][]

分配内存 数据类型 [][]数组名=new 数据类型 [一维数组长度][二维数组最大长度] 例 int [][]num=new int [5][30]

二维数组实际是一个一维数据,他的元素也是;

赋值方式 socres={{1,2,3},{2,3,4},{7,8,9}}

 

第六章

 

对象的特征 -----类的属性 每个对象都有特定的属性值

 

封装 对象同时具有属性和方法 两项特性 通常被封装在一起 共同体现事物 不能分割

类和对象 类是抽象的概念 是一个模子 确定了对象的实行和方法


对象 是现实世界中的实体看得见摸的着 具有静态和动态特性

 

定义类的步骤

1 定义类名

2 编写类的属性


3 编写类的方法

定义类的属性 访问修饰符 属性类型 属性名称=默认值

定义类的方法 访问修饰符 返回值类型 方法名称() {方法体}

 

成员变量 上级是类 作用域整个类中

局部变量 上级是方法 作用在本方法

类名 对象名 = new 类名() 创建对象

使用对象 对象名.属性=值 ; 例 being.schoolName="云图智联";


对象名.方法;

面向对象优点

1.便与程序模拟实现世界中的实体

2.隐藏细节 对象的属性和方法已被封装,通过方法来调用它,无需在意其内在的变化

3.可重用 通过类的模版,可以创建多个类的对象

 

 

类是引用数据类型 传值 m2=m1 传的是地址

 

类的方法 public 返回值类型 方法名() {方法主体}

方法名规范

1 必须以字母 - $ 开头

2 可以有 数字 但不能以数字开头

3 方法有多个单词主城 开头首之母小写 其后首字母大写

4 方法名都采用动词

 

方法返回值: 有返回值必须告诉返回值类型 void 无返回值类型

包名命名规范 公司网站倒过来写 加项目名称 再加类所属的文件

 

带参的方法

访问修饰符 返回值类型 方法名称 (参数列表) {方法体}

public string getFuirt(String fuirt)

String zhi= Fuirt "汁"

return zhi;

调用带参方法

同类中 直接 调用 方法名 (实参列表)

不同类 对象.方法名(参数列表)

 

带方法的参数:

形参数据类型与实参数据类型一致

形参调用数量与实参调用数量也需一致

 

字符串

声明字符串方法

String s="您好"; String s=new String("您好")

确定 字符串长度 用 length();

equals 比较的是值 用于字符串比较 == 比较的是地址 用于数字比较

equals lgnore Case 忽略大小写

toLowerCase 转换成小写

toUpperCase 转换成大写

\转运符

String s="您好" str=str+"北京"

使用 + 与 concat 方法 会浪费内存 性能较差 线程安全

idexOf(int ch) 获取字符或字符下标 str .idexOf('你') indexOf(String s) 例 str .indexOf(.java)

lastidexOf(int ch) 例如 str .lastidexOf('你') lastindexOf(String s) 例 str .lastindexOf(.java)

 

subString(int beginIdenx,int endIndex) 下标从0开始 包括beginIdenx, 不包括 endIndex

trim() 去掉前后空格

 

split() 方法分割 字符串 返回数组

String Buffer类 频繁拼接字符串时使用

String Buffer m=new String Buffe("你")

m.append("好吗?")

m.insert(1,"们")

String str=m.toString();

System.out.println(str);//你们好吗?

特点: 不会产生副本 节省内存 性能高 线程安全 在自身基础上追加字符串

 

 

操作数据较少 使用 String

 

操作数据较多使用 StringBuffer ;StringBuilder

操作数据较多 并且是多线程使用 StringBuffer

操作数据较多 并且是 单线程使用 StringBuilder

性能 String < StringBuffer < StringBuilder

抽象类的步骤

1 定义类

2 定义属性

3 定义方法

 

抽象原则

1 根据面向对象思想抽取

类图优点: 直观 易于理解

构造方法 系统默认的无参构造 public Dog() { }

当程序写了自定义的构造方法时,系统默认的无参构造会消失

自定义无参和有残构造

public aDog() { this.name="小白"}

public aDog(String name){ this.name="小白"}

特点 :访问修饰符 public 无返回值 构造方法名与类名一致

public Dog(String name) { this.name=name;}

this 当前对象的引用

 

static 静态的意思 修饰属性,方法,代码块

被修饰的属性,方法 的调用方式 : 类名.属性 类名.方法 代码块 类加载时 加载的是代码块

final 最终的 修饰属性 它是个常量,并且不可修改 常量名全为大写

方法里的变量不能被static 修饰

封装三步骤 1 属性私有化 通过 private

2 创建 getter/setter方法

3 在getter/setter方法中加入控制语句

this使用: this.属性 this.方法 this.构造 this() 调用无参构造 this(参数[]) 调用有参构造

开发中一个完整的实体类 包括 私有化属性 get和set方法 无参构造与有参构造

子类不能继承父类的那些成员

1.private 成员

2.不在同包中使用默认访问权限

3. 构造方法

访问修饰符使用范围

private 本类 friendly 本类 同包 protected 本类 同包 子类 public 本类 同包 子类 其他

多重继承关系顺序: 父类属性 构造方法 —— 子类属性 构造方法

super 只能访问子类的方法和构造方法

访问构造方法时只能放在第一句

 

不能访问父类private 成员

我的Java笔记的更多相关文章

  1. Effective Java笔记一 创建和销毁对象

    Effective Java笔记一 创建和销毁对象 第1条 考虑用静态工厂方法代替构造器 第2条 遇到多个构造器参数时要考虑用构建器 第3条 用私有构造器或者枚举类型强化Singleton属性 第4条 ...

  2. java笔记00-目录

    --2013年7月26日17:49:59 学习java已久,趁最近有空,写一个总结: java笔记01-反射:

  3. java笔记整理

    Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...

  4. 转 Java笔记:Java内存模型

    Java笔记:Java内存模型 2014.04.09 | Comments 1. 基本概念 <深入理解Java内存模型>详细讲解了java的内存模型,这里对其中的一些基本概念做个简单的笔记 ...

  5. servlet(6) - servlet总结 - 小易Java笔记

    垂阅前必看: 这都是我总结的我觉得是学习servlet应该掌握的,我在学习期间也做了一个博客项目来让所学的知识得以巩固.下面就是博客项目链接.前面的servlet相关的笔记总汇,还有就是我把觉得在学习 ...

  6. Java笔记 —— 继承

    Java笔记 -- 继承 h2{ color: #4ABCDE; } a{ text-decoration: none!important; } a:hover{ color: red !import ...

  7. Java笔记 —— 方法重载和方法重写

    Java笔记 -- 方法重载和方法重写 h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: red ...

  8. Java笔记 —— 初始化

    Java笔记 -- 初始化 h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: red !impo ...

  9. Java笔记 —— this 关键字

    Java笔记 -- this 关键字 h2{ color: #4ABCDE; } a{ color: blue; text-decoration: none; } a:hover{ color: re ...

  10. Java 笔记 —— java 和 javac

    Java 笔记 -- java 和 javac h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: ...

随机推荐

  1. JBPM4.4 基本使用

    JBPM工作流环境搭建: 1.先下载JBPM框架 2.安装JBPM图形编辑插件 注:插件在jbpm-4.4\install\src\gpd 目录下 创建工程导入JBPM依赖jar包 注:jar包目录j ...

  2. echarts 系列一

    由于近期项目需要做地图方便的可视化图标,经过比较最终选定echarts. echarts在可视化视图方面非常强大,可以满足大多数开发需求. 采用标签式引入js文件,引用的js 文件位置 echarts ...

  3. Android 5.0之前屏幕截图的方法

    截图的几种方法 Android获取屏幕截图主要有以下三种方法 1.通过view.getDrawingCache()获取指定View的绘制缓存来实现截屏. 这种方式Android 5.0之前也可以,且不 ...

  4. Spring动态数据源的配置

    Spring动态数据源 我们很多项目中业务都需要涉及到多个数据源,就是对不同的方法或者不同的包使用不同的数据源.最简单的做法就是直接在Java代码里面lookup需要的数据源,但是这种做法耦合性太高, ...

  5. MySQL常用命令总结3

    id SMALLINT UNSIGNED [AUTO_INCREMENT] PRIMARY KEY, //把id定义为主键且自动排号,每张数据表只有一个主键,不能为NULL,确保记录唯一性 //省略a ...

  6. bzoj4010: [HNOI2015]菜肴制作【拓扑排序】

    想到了一个分治方法,每一次尽量放小的那个,把它依赖的放在左边,不依赖的放在右边. TLE 80: #include <bits/stdc++.h> #define rep(i, a, b) ...

  7. Backbone视图渲染React组件

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title&g ...

  8. 用anaconda的pip安装第三方python包的日志

    用anaconda的pip安装第三方python包的日志 启动anaconda命令窗口: 开始> 所有程序> anaconda> anaconda prompt 会得到两行提示: D ...

  9. Python - Headless Selenium WebDriver Tests using PyVirtualDisplay

    Here is some Python code showing WebDriver with a virtual display provided by Xvfb: #!/usr/bin/env p ...

  10. 环信 之 iOS 客户端集成三:基础功能

    SDK中,大部分与网络有关的操作,都有三种方法: 同步方法 通过delegate回调的异步方法.要想能收到回调,必须要注册为:[[EaseMob sharedInstance].chatManager ...