Java第一周总结(20160801-20160807)
day01:
1.常见的dos命令:
盘符: 进入指定的盘下面。
操作文件夹:
dir
列出当前控制台所在的路径下的所有文件以及文件夹。
cd 路径 进入指定的路径下。
cd ..
回退到上一级目录上。
cd \
回退到当前路径下的根目录。
md 文件夹的名字 创建一个文件夹
rd 文件夹的名字 删除一个空文件夹。 注意: 不能用于删除非空到的文件夹。
操作文件:
echo 数据>文件名
创建一个文件并且指定写入的数据。
type 文件名 查看指定的文件内容。
del 文件名
删除指定的文件。 注意: del后面如果跟一个文件夹,那么是删除一个文件夹中的所有文件。
*
通配符(可以匹配任意的文件名)
tab
内容补全.
cls
清屏
上下方向键
找回上一次所写过的命令。
exit
关闭控制台。
set
查看所有的环境变量信息。
set 环境变量的名字 查看指定的环境变量信息。
set 环境变量名字 = 路径信息
设置指定的环境变量信息。
set 环境变量名字
=
清空指定的环境变量信息。
set 环境变量名字 = 新路径;%环境变量名字% 在原有的基础上添加新的路径信息。
2.java的环境的搭建:
jre: java运行环境。 jre
= java虚拟机 + 核心类库(辅助java虚拟机运行的文件)
jdk: java开发工具集
jdk = jre + java开发工具
jdk目录的介绍:
bin: 存放的是java的开发工具。
db : JDK7附带的一个轻量级的数据库,名字叫做Derby。
include :存放的调用系统资源的接口文件。
jre : java运行环境
lib : 核心类库。
src.zip : java源代码
day02:
1.配置环境变量
配置path环境变量变的目的是让控制台可以在任意的路径下都可以找到java的开发工具。
classpath 环境变量:
设置了classpath环境变量的时候,启动jvm(java虚拟机)的时候,那么java虚拟机就会 根据classpath环境变量所保存路径信息下去
寻找对应的class文件。
设置classpath环境变量信息的有分号与没有分号
的区别:
1. 如果配置classpath环境变量信息没有加上分号,那么java虚拟机仅会在classpath所保存的路径下去搜索对应的class文件,不会在当前路径下去搜索了。
2. 如果配置classpath环境变量信息加上分号,那么java虚拟机除了会在classpath所保存的路径下去搜索对应 的class文件之外,如果能找到对应的class文件
那么就马上指定对应的class文件,否则还会去 当前路径下去搜索。
2.标识符
命名默认规则:
1. 包名
多个单词组成时所有字母小写(例:package com.itcast)
2. 类名和接口
多个单词组成时所有单词的首字母大写(例:HelloWorld)
3. 变量名和函数名
多个单词组成时第一个单词首字母小写,其他单词首字母大写(例:lastAccessTime、getTime)。
4. 常量名
多个单词组成时,字母全部大写,多个单词之间使用_分隔(例:INTEGER_CACHE)
3.注释
1.单行注释(line comment)用//表示,编译器看到//会忽略该行//后的所文本
2.多行注释(block comment)用/**/表示,编译器看到/*时会搜索接下来的*/,忽略掉/**/之间的文本。
3.文档注释用/** */表示,是java特有的注释,其中注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。
4.常量
Java中常量的分类(六种):
整数常量: 所有整数
小数常量: 所有小数
布尔常量: 只有true和false
字符常量:使用’’引起来的单个字符
字符串常量:使用“”引起来的字符序列,“” 、“a” 、””
null常量: 只有一个值null
5.进制转换
6.变量
算术表达式,逻辑表达式
所有的byte型、short型和char的值将被提升到int型。
如果一个操作数是long型,计算结果就是long型;
如果一个操作数是float型,计算结果就是float型;
如果一个操作数是double型,计算结果就是double型。
day03
1.java运算符
1.1 算术运算符
1.2 (关系)比较运算符
1.3 布尔逻辑运算符
另:Java提供了短路逻辑运算符:&&和||
1.4 位运算符
day04
1.if语句
2.switch语句
3.while语句和do-while语句
4.for语句
5.转义字符
5.break和continue关键字
day05
1.return关键字和函数的重载
函数重载要求:1.函数名一致。2.行参列表不一致(形参个数或对应数据类型不一致)。3.与函数的返回值类型是无关的。
2.数组
day06
1.对象
定义:真实存在的唯一的事物。
类:同一种类型的公共属性与公共行为的抽取
java核心思想:找适合的对象做适合的事情
找对象的方式:
方式一:sun已经定义好了很多的类,我们只需要认识这些类即可创建对象使用
方式二:我们需要自定义类,通过自定义类创建对象。
2.成员变量与局部变量的区别:
1.自定义的位置区别:
1.成员变量是定义在方法之外,类之内的变量。
2.局部变量是声明在方法之内的变量。
2.作用上的区别:
1.成员变量的作用是描述一类事物的属性
2.局部变量的作用是提供一个变量给方法内部使用
3.生命周期区别:
1.成员变量随着对象的创建而存在,随着对象的消失而消失
2.局部变量是调用到了对应的方法执行到了创建该变量的语句时存在,一旦出了自己的作用域消失
4.初始值区别:
1.成员变量是由默认初始值的。
2.局部变量是没有默认的初始值的,必须要先初始化才能使用
3.匿名对象
定义:没有引用类型变量指向的对象就称作为匿名对象
匿名对象要注意的细节:1.一般不会给匿名对象的属性赋值,因为永远都没法获取到。2.两个匿名对象永远不可能是同一个对象
匿名对象的好处: 简化书写,节约内存,当调用匿名对象的方法后,该对象立刻成为垃圾对象;如果新建对象变量的话,需要等待主方法执行完后才能被回收。
匿名对象的应用场景;
1.如果调用一个对象的方法一次时,然后这个对象不再使用,那么这时候可以使用匿名对象
2.可以作为实参调用一个函数
4.封装:
1.使用private修饰需要被封装的属性
2.根据需要提供get或者set方法设置以及获取属性
封装的好处:
1.提高了数据的安全性
2.操作简单
3.隐藏了实现
注意:一般实体类的属性都会封装起来
day07
1.构造函数:
构造函数的作用:初始化对应的对象
构造函数的格式:
修饰符 函数名(形式参数){
函数体
}
构造函数要注意的事项:
1.构造函数是没有返回值类型的
2.构造函数的函数名必须与类名一致
3.构造函数不是我们手动调用的,是我们再创建了对应的对象时,JVM会根据你创建的对象传递的参数调用对应的对象
4.如果一个类没有显示写上一个构造函数的时候,那么java编译器会为该类添加一个无参的构造函数
5.如果一个类已经显式写上一个构造函数的时候,那么java编译器不会为该类添加一个无参的构造函数
2.构造代码块:
构造代码块的作用:给对象进行统一的初始化
构造代码块是在创建了代码块所属类的对象时调用一次
代码块的类别:
1. 构造代码块。
2. 局部代码块. 大括号位于方法之内。 作用:缩短局部 变量 的生命周期,节省一点点内存。
3. 静态代码块 static
3.this关键字
this关键字代表了所属函数的调用者对象
this关键字的作用:
1.一个类中存在同名的成员变量与局部变量时,在方法内部是默认访问局部变量的,可以通过this关键字访问成员变量
2.this关键字还可以在构造函数中调用另外一个构造函数的初始化对象。this(构造函数参数列表)
this关键字调用构造函数要注意的事项:
1.this关键字调用其他的构造函数时,必须要是在第一个语句
2.this关键字调用构造函数时不能出现相互调用,因为是一个死循环
3.如果在方法内部访问一个变量时,该变量只存在于成员变量中,局部变量没有,这时候java编译器会为该变量的前面添加一个tthis关键字
4.static(静态修饰符)
sttatic修饰成员变量时,那么该成员变量的数据就是一个共享的数据。
静态成员变量的访问方式:
方式一:使用对象进行访问。对象.属性名
方式二:可以使用类名进行访问。类名.属性名
注意:
1.非静态成员变量不能使用类名直接访问,只能使用对象访问
2.千万不要为了方便访问成员变量而使用ststic修饰,一定要是共享时才修饰
Added
1.static修饰成员函数
访问方式同上,推荐使用类名访问静态的成员
静态函数要注意的细节:
1.非静态函数只能由对象调用,静态函数可以由类名或者对象进行调用
2.静态函数中不能直接访问非静态成员,可以直接访问静态的成员
3.非静态函数可以直接访问非静态成员以及可以直接访问静态的成员
4.静态函数中不能出现this或者super关键字
核心思想:静态成员在内存中是优于对象存在的
2.main方法详解
3.单例设计模式
目的:保证一个类在内存中只有一个对象
饿汉单例设计模式:
1.私有化构造函数
2.声明本类的引用类型变量并且指向本类的对象,(引用类型变量的修饰符:private static)
3.提供一个公共静态的方法获取本类对象
懒汉单例设计模式
1.私有化构造函数
2,声明本类的引用类型变量,但不要创建对象
3.提供一个公共静态的方法获取本类对象,获取之前先判断是否已经创建了本类的对象,
如果没有创建,创建再返回,如果已经创建了,那么直接访问即可
4.继承:
继承的格式:
class 类名一 extends类名2{
}
继承要注意的事项:
1.父类私有的成员不能被继承
2.父类的构造函数不能被继承
3.创建子类对象时,默认会先调用父类的无参构造函数,然后再调用子类的构造函数
5.super关键字
定义:super关键字代表的是父类的引用空间
super关键字的作用:
1.如果子父类存在同名的成员时,在子类中默认访问子类的成员,可以通过super关键字指定访问父类的成员
2.创建子类对象时,默认会先调用父类的无参构造函数,可以通过super关键字调用指定父类的构造函数
super关键字要注意的事项:
1.如果在子类的构造函数中没有指定调用具体的父类构造函数,那么java编译器会在子类的构造函数上添加super语句
2.super关键字调用构造函数时,必须出现在构造函数中的第一句
3.this与关键字调用构造函数时,不能在一个构造函数中出现。
6.方法的重写
情况:子父类存在同名的函数
方法重写的需求:如果父类的功能无法满足子类的需求,那么进行重写
方法重写的步骤:
1.函数名与形参列表必须一致
2.子类的权限修饰符必须大于或等于父类的权限修饰符
3.子类的返回值类型必须小于或者等于父类的返回值类型(Animal类和fish类的对象)
4.子类抛出的异常类型必须小于或者等于父类抛出的异常类型
7.instanceof关键字
作用:判断一个对象是否属于某种类型
格式:
对象 instanceof 类
instanceof的使用前提:判断的对象与类型必须存在继承或者实现的关系
Java第一周总结(20160801-20160807)的更多相关文章
- 201521123014 java第一周总结
201521123014 java第一周总结 1.本周学习总结 刚认识这一门新语言,我就充满了好奇心,想看看Java和学过C语言,C++有什么区别.在这一周的学习中,我认识到,对于初学者而言,Java ...
- JAVA第一周学习
新学期伊始,六门专业课,课课重要,无法抉择重心,但日子还是要过的,而且要精细的过,不能得过且过 JAVA第一周任务 一:学习第一章视频 二:使用JDB调试JAVA 三:输入调试教材上代码,并把代码上传 ...
- Java第一周作业
Java第一周作业 本周作业: 参考<<教材学习指导(http://www.cnblogs.com/rocedu/p/7911138.html)) 学习第一章视频 参考<<使用 ...
- 20165235 Java第一周学习总结
(# 20165235 Java第一周学习总结 Ubuntu下git的安装与使用 首先Ubuntu下git的安装,使用sudo apt-get install git下载Ubuntu,下载完成后可以用 ...
- 201521123063 java第一周总结
20152112306 <Java程序设计>第一周学习总结 1.本周学习总结(2.20-2.26) java语言的特点: (1)简约且简单 (2)平台无关性 (3)面向对象 (4)多线程. ...
- 201521123042 Java第一周学习总结
1. 201521123042 <Java程序设计>第一周学习总结 a.用notepad++和eclipse编写Java程序 b.安装Java Q1.为什么java程序可以跨平台运行?执行 ...
- 201521123093 java 第一周总结
201521123093 <Java程序设计> 第一周学习总结 1.本周学习总结 (1)第一次开始接触java语言,java的用法和C不太一样.在编程序时语句比以前的长. (2)学会了使用 ...
- 20165221 JAVA第一周学习心得及体会
JAVA入门的理论学习 在JAVA2使用教程的网课学中,分为以下几个模块讲解的 JAVA的地位 JAVA的特点 安装JDK(Java Develepement Kit) Java程序的开发步骤 简单的 ...
- 自学Java第一周的总结
在第一周里我花费了不少时间配置jdk的环境变量,并学习了有关java的基本知识,了解了Java中的变量.数据类型以及运算符.我知道了什么是变量并且如何去定义变量,也学会了如何去使用运算符以及对数据类型 ...
- 20165326 java第一周学习笔记
第一周学习笔记 一.理论视频学习 1.Java的特点:简单.面向对象.平台无关 2.Java的开发步骤&简单的应用程序: 文本编辑器写入代码 命名类名.java,文件类型所有文件,编码ANSI ...
随机推荐
- flush();close();dispose()
写一个写csv文件的程序,用streamwriter,觉得程序主体是没有问题的,但是一直写不进去,最后发现是因为没有调用flush(). msdn 对streamwriter.flush()的的说明是 ...
- CaseFile
出处 http://tools.kali.org/information-gathering/casefile CaseFile is the little brother to Maltego. I ...
- cocos2dx-触摸事件
//创建一个精灵 Sprite *spriteTest = Sprite::create("1.png"); spriteTest->setPosition(Point(,) ...
- JasperReport使用心得
1. JasperReport 报表文件视图化生成工具iReport. iReport做为一个生成JasperReport的视图工具,和我们是使用的大多数报表创建工具没有太大的差别,都是拖控件,搭出报 ...
- poj1083 贪心
K - 简单dp Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:10000KB 64bit ...
- C++Primer笔记(3)
标准库类型string表示可变长的字符序列,使用前先包含string头文件.(哈哈,终于可以逃脱C语言中的str函数系列了.)因为是标准库的一部分,所以string被定义在命名空间std中.所以你懂该 ...
- Keil C减小代码编译量大小的方法(gai)
keil-C减小代码编译大小的方法整理 方法一:(通过优化代码减小) 1.1少做乘除运算,使用左/右移位来实现乘除 Eg ,普通:a = 0x80*4: 优化:a = 0x80<<2: 1 ...
- encodeURI后台乱码(解决)
window.location.href = xxxx?a=encodeURI(encodeURI(name)) ; name是中文,页面部分需要编码两次 name = java.net.URLDec ...
- sql建立跨服务器链接
select srvname,* from master.dbo.sysservers //创建linkServer exec sp_addlinkedserver 'srv_lnk',' ...
- AngularJS 通过 Spring Restful 上传文件
总结一下,在写下这些文字之前心里很不爽,一个小问题倒腾了这么久... JS 端: // 指令 app.directive('fileModel', ['$parse', function($pars ...