一、idea的基本使用
目录
- 创建JAVA项目
- 如何运行JAVA
-
创建JAVA项目
打开 idea,并点击New Project.
填写项目名称,编译语言默认为java,并选择jdk版本,点击create创建新项目
进入project 在src中创建包名和类,编写程序并运行
如果之前有未关闭的项目,可以点击左上角File→New→Project来创建新项目
二、JAVA基础
jvm:java虚拟机
jdk:java开发工具包
jre:java运行环境
jdk包含jre,jre包含jvm。
类:类是一种抽象的数据类型,它是对某一类事物整体的描述或定义,但是并不能代表某一个具体的事物。
常见基本数据类型
数据类型名称 | 占用字节 | 默认值 | 包装类 |
byte(字节型) | 1 | 0 | Byte |
short(短整型) | 2 | 0 | Short |
char(字符型) | 2 | \u0000 | Character |
int(整型) | 4 | 0 | Integer |
float(浮点型) | 4 | 0.0f | Float |
long(长整型) | 8 | 0L | Long |
double(双精度浮点型) | 8 | 0.0d | Double |
boolean(布尔型) | 1bit or JVM | false | Boolean |
面向对象三大特性
- 封装
- 继承
- 多态
封装是将数据和代码捆绑到一起,对象的某些数据和代码可以是私有的,不能被外界访问,以此实现对数据和代码不同级别的访问权限。防止了程序相互依赖性而带来的变动影响,面向对象的封装比传统语言的封装更为清晰、更为有力。有效实现了两个目标:对数据和行为的包装和信息隐藏。
1.格式:
public class类名{
修饰符 类名(参数){
}
}
2.封装的关键字
- private:修饰符,可用来修饰成员变量,成员方法。被private修饰的成员只能在本类进行访问。
- this:this修饰的变量用于指代成员变量,其主要作用是区分局部变量和成员变量的重名问题。
3.封装的好处为可以隐藏实现细节,提供公共的访问方式,提高了代码的复用性,提高了安全性。
package com.pak1;
public class Test {
public static void main(String[] args) {
Student student = new Student();
student.setName("小明");
student.setAge(16);
student.printStudentAge();
Student student2 = new Student();
student.setName("小白");
student.setAge(120);
student2.printStudentAge();
}
}
class Student {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age < 0 || age > 60)
throw new RuntimeException("年龄设置不合法");
this.age = age;
}
public void printStudentAge() {
System.out.println(name + "同学的年龄:" + age);
}
}
继承简单地说就是一种层次模型,这种层次模型能够被重用。层次结构的上层具有通用性,但是下层结构则具有特殊性。在继承的过程中类则可以从最顶层的部分继承一些方法和变量。类除了可以继承以外同时还能够进行修改或者添加。通过这样的方式能够有效提高工作效率。在这里举一个例子,当类X继承了类Y后,此时的类X则是一个派生类,而类Y属于一个基类。 继承是从一般演绎到特殊的过程,可以减少知识表示的冗余内容,知识库的维护和修正都非常方便。更有利于衍生复杂的系统。
1.格式:
class 父类{
}
class 子类 extends 父类{
}
2.继承的关键字
- super:通过super关键字实现对父类成员的访问,用来引用当前对象的父类。
- this:指向自己的引用。
- final:可用来修饰变量、方法和类。
3.继承的特性
单继承
public class A{
}
public class B extends A{
}
多重继承
public class A{}
public class B extends A{}
public class C extends B{}
不同类继承同一个类
public class A{}
public class B extends A{}
public class C extends A{}
注:Java不支持多继承。
多态是指不同事物具有不同表现形式的能力。多态机制使具有不同内部结构的对象可以共享相同的外部接口,通过这种方式减少代码的复杂度。一个接口,多种方式。
多态形成的三个必要条件:有继承,重写,父类的引用指向子类的对象。
1.格式:
父类类型 变量名=new 子类类型();
2.向上转型和向下转型
向上转型
父类类型 变量名 = new 子类类型();
Animal dog = new Dog()
向下转型
子类类型 子类变量名 = (子类类型) 父类变量名
Dog dog1 = (Dog) dog;
dog1.walk;