目录
1、关于IDEA工具的快捷键以及一些简单的设置
1)字体设置 File ---> setting ---> 输入font --->设置字体样式以及字号大小;
2)快速生成main方法: psvm
3)快速生成Sys.out.println(): sout
4)注意IDEA是自动保存,不需要 Ctrl + S
5)删除一行: Ctrl + Y
6)运行: 代码上右键--->run 点击代码左侧的绿色箭头 Ctrl + Shift + F10
7)左侧窗口的列表的展开和关闭: 左箭头关闭; 右箭头打开; 上下箭头移动;
8)退出任何窗口 Esc键
9)任何新增/新建/添加的快捷键: Alt + Insert
10)窗口变大、变小: Ctrl + Shift + F12
11)切换Java程序 Alt + 左右箭头
12)切换窗口 Alt + 标号(打开、关闭)
13)提示方法的参数: Ctrl + P
14)复制光标当前行代码到下一行: Ctrl + D
15)定位方法/属性/变量 光标停到某个单词下面,按Ctrl键,出现下划线,点击
2、关于eclipse工具的快捷键以及一些简单设置
2.1. 文件相关的快捷键
1)新建一个工程、文件、文件夹等内容 Ctrl + N
2)在对话框中进行的快捷操作 Alt + 带下划线字母
3)窗口最大化/还原 Ctrl + M
4)打开被选中的工程、包、文件等的属性窗口 Alt + Enter
5)运行程序 Ctrl + F11
6)调试模式运行程序 F11
7)重命名工程名、文件名、方法名、变量名 右键 —> Refactor —> Rename Alt + Shift + R F2
8)重命名工程名、文件名 F2
9)打开编辑窗口查看目录 Ctrl + E
10)切换到当前编辑窗口的上一个窗口 Ctrl + Page Up
11)切换到当前编辑窗口的下一个窗口 Ctrl + Page Down
2.2 编写代码时常用的快捷键
1)向上(下)复制光标所在行内容或选中内容 Ctrl + Alt + 向上(下)键
2)向上(下)移动光标所在行内容或选中内容 Alt + 向上(下)键
3)删除当前行/光标所在行 Ctrl + D
3)在光标所在行下添加一个空格 Shift + Enter
4)错误给出解决方案 Ctrl + 1
5)自动提示 Alt + ?
3、Java程序基础练习题
3.1 题目一:Vehicle Driving
要求:
请定义一个交通工具(Vehicle)的类,其中有属性:
1)速度(speed),
2)体积(size),
3)方法移动(move()),
4)设置速度(setspeed(int speed,) ),
5)加速speedUp (),
6)减速speedDown();
最后在测试类Vehicle中的main()中实例化一个交通工具对象并通过方法给它初始化speed,size的值并且打印出来,用加速减速的方法对速度进行改变;
public class HelloWorld {
public static void main(String[] args) {
//无参数构造方法创造对象
Vehicle v = new Vehicle();
//有参数构造方法创造对象
Vehicle v1 = new Vehicle(100.0,5.0);
//通过set方法赋值
v.setSpeed(100.0);
System.out.println("oldSpeed : " + v.getSpeed());
v.setSize(5.0);
//调用加速方法
v.speedUp(10.0);
System.out.println("addSpeed : " + v.getSpeed());
//调用减速方法
v.speedDown(5.0);
System.out.println("downSpeed : " + v.getSpeed());
}
}
class Vehicle {
private double speed;
private double size;
//无参构造方法
public Vehicle() {
}
//有参构造方法
public Vehicle(double speed, double size) {
this.speed = speed;
this.size = size;
}
public double getSpeed() {
return speed;
}
//设置速度的方法
public void setSpeed(double speed) {
this.speed = speed;
}
public double getSize() {
return size;
}
public void setSize(double size) {
this.size = size;
}
//交通工具的移动方法
public void move() {
System.out.println("公共汽车起步行驶");
}
//加速方法
public void speedUp(double addSpeed) {
//在原来基础上加
//int oldSpeed = this.getSpeed()
this.setSpeed(this.getSpeed() + addSpeed);
}
//减速方法
public void speedDown(double delSpeed) {
//在原来基础上减
//int oldSpeed = this.getSpeed()
this.setSpeed(this.getSpeed() - delSpeed);
}
}
3.2 题目二:Calculator
要求:
1)定义名为Number的类其中有两个整型数据成员n1和n2应声明为私有。
2)编写构造方法赋值n1和n2初始值;
3)为该类定义加addition()、减subration()、乘multiplication()、除division()公有实例方法;
4)分别对两个成员变量执行加、减、乘、除的运算;
public class JiSuanQi {
public static void main(String[] args) {
Number n1 = new Number();
Number n2 = new Number(5,41);
Number n3 = new Number(82,6);
Number n4 = new Number(24,6);
n1.addition();
n2.subration();
n3.multiplication();
n4.division();
}
}
class Number {
private int n1;
private int n2;
public Number(int n1, int n2) {
this.n1 = n1;
this.n2 = n2;
}
public Number() {
this(10,20);
}
public void setN1(int n1) {
this.n1 = n1;
}
public void setN2(int n2) {
this.n2 = n2;
}
public int getN1() {
return n1;
}
public int getN2() {
return n2;
}
public void addition(){
System.out.println(n1 + "+" + n2 + "=" + (n1+n2));
System.out.println(this.getN1() + "+" + this.getN2() + "=" + (this.getN1() + this.getN2()));
}
public void subration(){
System.out.println(n1 + "-" + n2 + "=" + (n1-n2));
System.out.println(this.n1 + "-" + this.getN2() + "=" + (this.getN1() - this.getN2()));
}
public void multiplication(){
System.out.println(n1 + "*" + n2 + "=" + (n1*n2));
System.out.println(n1 + "*" + n2 + "=" + (getN1() * getN2()));
}
public void division(){
System.out.println(n1 + "/" + n2 + "=" + (n1/n2));
}
}
3.3 题目三:People Message
要求:
1)定义一个人类People该类中应该有两个私有属性姓名name和年龄age;
2)定义构造方法用来初始化数据成员;
3)定义显示display方法将姓名和年龄打印出来;
4)在main方法中创建人类对象的实例然后将信息显示;
public class People {
public static void main(String[] args) {
Peason p = new Peason("Sam",18);
p.display();
Peason p2 = new Peason();
p2.setName("张三");
p2.display();
}
}
class Peason{
private String name;
private int age;
public void display(){
System.out.println("name:" + this.getName() + "," + "age:" + this.age);
}
public Peason() {
}
public Peason(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
}
3.4 题目四:Add Time
要求:
1)定义为MyTime的类其中应有三个整形成员时hour分minute秒second;
2)为了保证数据的安全性这三个成员变量应声明为私有;
3)为MyTime类定义构造方法以方便创建对象时初始化成员变量;
4)再定义display方法用于将时间信息打印出来;
5)为MyTime类添加一下方法:
addSecond(int sec)
addMinute(int min)
addHour(int hou)
subSecond(int sec)
subMinute(int min)
subHour(int hou)
public class Time {
public static void main(String[] args) {
MyTime t1 = new MyTime(13,20,15);
t1.display();
t1.addSecond(121);
t1.display();
}
}
class MyTime{
private int hour;
private int minute;
private int second;
public void addSecond(int sec){
int oldSec = this.getSecond();
int newSec = oldSec +sec;
if(newSec < 60){
this.setSecond(newSec);
}else if(newSec == 60){
this.addMinute(1);
this.setSecond(0);
}else{
this.addMinute(newSec / 60);
this.setSecond(newSec % 60);
}
}
public void addMinute(int min) {
this.setMinute(this.getMinute() + min);
}//由于下列方法类似,不再赘述解决数学问题
//还可以采用秒处理的方法对此类题进行处理
public void addHour(int hou){
}
public void subSecond(int sec){
}
public void subMinute(int min){
}
public void subHour(int hou){
}
public void display(){
System.out.println(this.getHour() + "时" + this.getMinute() + "分" + this.getSecond() + "秒");
}
public void setHour(int hour) {
this.hour = hour;
}
public void setMinute(int minute) {
this.minute = minute;
}
public void setSecond(int second) {
this.second = second;
}
public int getHour() {
return hour;
}
public int getMinute() {
return minute;
}
public int getSecond() {
return second;
}
public MyTime() {
}
public MyTime(int hour, int minute, int second) {
this.hour = hour;
this.minute = minute;
this.second = second;
}
}