JAVA自学笔记11
1:Eclipse的安装
2:用Eclipse写一个HelloWorld案例,最终在控制台输出你的名字
A:创建项目
B:在src目录下创建包。cn.itcast
C:在cn.itcast包下创建类。HelloWorld
D:在HelloWorld下有一个方法。public static void main(String[] args) {}
E:在main方法中有一个输出语句。System.out.println("你的名字");
3:Eclipse空间的基本配置
A:程序的编译和运行的环境配置(一般不改)
window – Preferences – Java
编译环境:Compiler 默认选中的就是最高版本。
运行环境:Installed JREs 默认会找你安装的那个JDK。建议配置了Java的环境变量。
问题:
低编译,高运行。可以。
高编译,低运行。不可以。
建议,编译和运行的版本一致。
B:如何去掉默认注释?
window -- Preferences -- Java -- Code Style -- Code Templates
选择你不想要的内容,通过右边Edit编辑。
注意:请只删除注释部分,不是注释部分的不要删除。
C:行号的显示和隐藏
显示:在代码区域的最左边的空白区域,右键 -- Show Line Numbers即可。
隐藏:把上面的动作再做一次。
D:字体大小及颜色
a:Java代码区域的字体大小和颜色:
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Java修改 -- Java Edit Text Font
b:控制台
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Debug -- Console font
c:其他文件
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Basic -- Text Font
E:窗体给弄乱了,怎么办?
window -- Reset Perspective
F:控制台找不到了,怎么办?
Window--Show View—Console
4:常用快捷键
A:格式化 ctrl+shift+f
B:导入包 ctrl+shift+o
如果该类仅仅在一个包中有,就自己显示了
如果该类在多个包中有,会弹出一个框框供你选择
C:注释
单行:注释 ctrl+/,取消注释再来一次。
多行:ctrl+shift+/,ctrl+shift+\
D:代码上下移动
选中代码alt+上/下箭头
E:查看源码
选中类名(F3或者Ctrl+鼠标点击)
F:Alt+/ 内容辅助键
5:如何提高开发效率
A:自动生成构造方法
a:无参构造方法 在代码区域右键–source–Generate Constructors from Superclass
b:带参构造方法 在代码区域右键–source–Generate Constructors using fields.. – finish
B:自动生成getXxx()/setXxx()方法
在代码区域右键–source–Generate Getters and Setters…
提供了对应的快捷键操作。
alt+shift+s
按下带有下划线的那个字母即可。
C:如何继承抽象类和实现接口。
D:Override的作用
表示该方法是重写父类的。如果方法声明和父类不匹配,就会报错。
6:通过讲解的快捷键和提高开发效率的一些内容完成如下内容
自定义学生类:Student
成员变量;
姓名
年龄
构造方法:
无参
带参
成员方法:
getXxx()/setXxx()
在给出一个show()方法,显示类的所有成员信息。
然后,写一个测试类,对学生的代码进行测试。
StudentDemo
7:删除项目和导入项目
删除项目
选中项目 – 右键 – 删除
从项目区域中删除
从硬盘上删除
导入项目
在项目区域右键找到import
找到General,展开,并找到
Existing Projects into Workspace
点击next,然后选择你要导入的项目
注意:这里选择的是项目名称
8:要注意的几个小问题
如何查看项目所在路径
选中 – 右键 – Properties – Resource – Location
导入项目要注意的问题
项目区域中不可能出现同名的项目(新建或者导入)
自己随意建立的文件夹是不能作为项目导入的
修改项目问题
不要随意修改项目名称
如果真要修改,不要忘记了配置文件.project中的
把这里改为你改后的名称
9:大家接收文件的注意事项
A:专门建立一个文件夹用于接收项目,不要随意放置。
B:同一个项目再次接收的时候,先去存放目录把原始项目删除,然后重新存储,最后刷新项目即可。
C:每天对照我写的项目,自己也创建一个练习项目
举例:我的项目名称 day11_eclipse
你就创建一个项目名称 day11_eclipse_test
10:Eclipse中代码的高级(Debug)调试
作用:
调试程序
查看程序执行流程
如何查看程序执行流程
要想看程序流程,就必须设置断点。
什么是断点:
就是一个标记,从哪里开始。
如何设置断点:
你想看哪里的程序,你就在那个有效程序的左边双击即可。
在哪里设置断点:
哪里不会点哪里。
目前:我们就在每个方法的第一条有效语句上都加。
如何运行设置断点后的程序:
右键 -- Debug as -- Java Application
看哪些地方:
Debug:断点测试的地方
在这个地方,记住F6,或者点击也可以。一次看一行的执行过程。
Variables:查看程序的变量变化
ForDemo:被查看的源文件
Console:控制台
如何去断点:
a:再次双击即可
b:找到Debug视图,Variables界面,找到Breakpoints,并点击,然后看到所有的断点,最后点击那个双叉。
11、继承抽象类或实现接口的简化
创建界面上即可选择父类,系统将自动生成需要重写的父类
12、eclipse制作帮助文档
1)编写源程序(设计接口,抽象类,具体类案例)-针对源程序添加文档注释
-选中项目-右键-Export-java-javadoc-finish
2)打jar包并使用它
jar是多个class文件的压缩包,是别人写好的东西
如何打jar包?选中项目-右键-export-java-jar-自己指定一个路径和名称-finish
如何使用jar包?复制jar包到项目路径下并添加至构建路径
13、删除和导入项目
1)从项目区域上删除/从硬盘上删除
2)导入项目:在项目区域右键找到import-找到general展开,并找到existing project into workspace-点击next,选择你要导入的项目名称
注意事项:项目区域不可出现同名的项目(新建或导入)、自己随意加你的文件夹是不允许作为项目导入的
如何查看项目所在路径?选中项目-右键-Properties-resource-location
修改项名称注意:不要随意修改项目名称,若真的需要修改,请配置文件project中的
把这里改为修改后的名称
14、debug的使用
1)调试出去,查看程序执行流程
2)断点:一个标记
设置断点: 想查看哪里的程序,就在那个有效程序的左边双击即可
15、eclipse查看java中参数传递
16、API:java提供的应用程序接口
17、Object类
1)类层次结构的根类,每个类都使用Object作为超类
2)构造方法:public Object();
3)方法:public int hashCode
①返回对象的哈希码值,针对不同的对象返回不同的整数,将对象的实际地址转为一个整数输出
对象名.hashCode();
4)方法 public final Class getClass()
①返回Object的运行时类,其实是字节码对象
Class类的方法:
public String getName();//以String的形式返回此Class对象所表现的实体
Class c=对象名.getClass();
String str=c.getName();//将打印对象名所属的包及类名,可使用链式编程
5)方法 public String toString()
①以String的形式返回此Class对象所表示的实体(包括类、接口、数组类、基本类型或void)名称,返回对象的字符串表示
toString()的值等价于this.getClass().getName()+’@’+Integer.toHexString(this.hashCode())
类Integer下的方法toHexString(int i)将以16进制无符号整数形式返回一个整数参数的字符串表示形式
②一般需要重写。
把该类的所有成员变量值组成返回即可,右键-Source-generate toString()
,系统将自动重写
只用对象名作为参数,系统默认调用toString()方法
6)方法 public boolean equals(Object obj)
①指示其他对象是否与此对象“相等”(默认比较的是地址值 ),只能比较引用类型
②一般要重写,因为该方法都是用来比较对象的成员变量值是否相同
字符串类String的equals()方法是重写自Object类的,比较的是字符串的内容是否相同,可以用if或三目运算符完成
调用方法:对象A.equals(对象B);
重写:this.字符串类型的成员变量名.(obj.obj类的某一成员变量)
使用前要对Object类的对象obj进行向下转型,以调用只在子类中存在的成员变量
在方法最前面可以添加一个判断 this==obj来比较地址值。若为真,则无需再比较,输出真
同时,我们还应该判断参数中的对象是否是某个类的对象,如果不是,直接返回false。格式如下
对象名 instanceof 类名
if(obj instanceof Student)
③可自动生成:右键-source-generate hashCode() and equals()
系统将给出优化后的代码
7)方法 protected void finalize()
①当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法,子类重写finalize方法,以配置系统资源或执行其他清除
8)方法 protected Object clone()
①创建并返回此对象的一个副本
② 需在子类重写,子类需使用Cloneable接口(没有成员方法的标记接口),是告诉我们实现接口的该类可以实现对象的复制
JAVA自学笔记11的更多相关文章
-
JAVA自学笔记05
JAVA自学笔记05 1.方法 1)方法就是完成特定功能的代码块,类似C语言中的函数. 2)格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,-){ 函数体; return ...
-
JAVA自学笔记06
JAVA自学笔记06 1.二维数组 1)格式: ①数据类型[][]数组名 = new 数据类型[m][n]; 或 数据类型[]数组名[]=new 数据类型[m][n]; m表示这个二维数组有多少个一维 ...
-
JAVA自学笔记18
JAVA自学笔记18 1.Map接口: 1)功能: 2) Map<String,String>m=new HashMap<String,String>(); //添加元素,元素 ...
-
JAVA自学笔记09
JAVA自学笔记09 1.子类的方法会把父类的同名方法覆盖(重写) 2.final: 1)可修饰类.方法.变量 2)修饰类时:此时该类变为最终类,它将无法成为父类而被继承 3)修饰方法时:该方法将无法 ...
-
JAVA自学笔记04
JAVA自学笔记04 1.switch语句 1)格式:switch(表达式){ case 值1: 语句体1; break; case 值2: 语句体2; break; - default: 语句体n+ ...
-
JAVA自学笔记07
JAVA自学笔记07 1.构造方法 1) 例如:Student s = new Student();//构造方法 System.out.println(s);// Student@e5bbd6 2)功 ...
-
JAVA自学笔记10
JAVA自学笔记10 1.形式参数与返回值 1)类名作为形式参数(基本类型.引用类型) 作形参必须是类的对象 2)抽象类名作形参 需要该抽象类的子类对象,通过多态实现 3)接口名为形参 需要的是该接口 ...
-
JAVA自学笔记13
JAVA自学笔记13 1.StringBuffer类 1)线程安全的可变字符序列 线程安全(即同步) 2)StringBuffer与String的区别:一个可变一个不可变 3)构造方法: ①publi ...
-
JAVA自学笔记14
JAVA自学笔记14 1.正则表达式 1)是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串.其实就是一种规则.有自己的特殊应用 2)组成规则: 规则字符在java.util.rege ...
随机推荐
-
Struts+Hibernate+jsp页面 实现分页
dao层数据库代码: package com.hanqi.dao; import java.util.ArrayList; import java.util.List; import org.hibe ...
-
centos彻底删除文件夹、文件命令(centos 新建、删除、移动、复制等命令)
centos彻底删除文件夹.文件命令(centos 新建.删除.移动.复制等命令: 1.新建文件夹 mkdir 文件名 新建一个名为test的文件夹在home下 view source1 mkdir ...
-
yii2 i18n学习
举例说明常见的翻译:Yii::t('app','Login'):追踪源码:BaseYii.php 文件 ,Yii::t($category, $message, $params = [], $lang ...
-
eclipse问题解决(maven插件link方式安装失败)
一.link方式安装eclipse的一款插件:maven (附:若不熟悉link方式,则进入此处:link方式安装eclipse插件) 其间,只弹出警告,大概意思是:部分内容,未经授权,谨慎使 ...
-
ios控件 UIViewController
//通过xib文件创建一个视图控制器.并作为窗口的根控制器 self.viewController = [[ViewController alloc] initWithNibName:@"V ...
-
OpenModelica Debug
assertion只触发一次 The gdb process has not responded to a command within 40 second(s).This could mean it ...
-
以宽字符形式读整个文件的内容(wifstream的使用)
// TestShlwAPI.cpp : 定义控制台应用程序的入口点.// #include "stdafx.h" #include <iostream>using s ...
-
DNS中NS和SOA区别
ns 授權很簡單… 假設你註冊的 domain 叫 abc.com ,而你有 ns1 與 ns2 兩台 server . 那,你必需從 .com 的權威伺服器授權給你,其設定或類似如此: $ORIGI ...
-
HihoCoder1041 国庆出游 树形DP第四题
小Hi和小Ho准备国庆期间去A国旅游.A国的城际交通比较有特色:它共有n座城市(编号1-n):城市之间恰好有n-1条公路相连,形成一个树形公路网.小Hi计划从A国首都(1号城市)出发,自驾遍历所有城市 ...
-
solidity语言
IDE:Atom 插件:autocomplete-solidity 代码自动补齐 linter-solium,linter-solidity代码检查错误 language-ethereum支持 ...