首页 > 编程语言 >java8学习

java8学习

时间:2023-09-08 23:12:53浏览次数:58  
标签:void System class 学习 Animal println java8 out

java8安装与环境变量配置

choco

choco官网

image
安装命令:choco install jdk8自动配置环境变量

IDEA

官网安装

java语法

注:由于默认具有cpp基础,所以和cpp极为相似的点我不会提及。

enum枚举

public enum PlayerType {
    TENNIS("网球"),
    FOOTBALL("足球"),       //常量FOOTBALL也可以不赋值
    BASKETBALL("篮球");

    private String name;

    PlayerType(String name) {
        this.name = name;
    }
}

实际上,枚举继承自ENUM类,编译时会补全
此外,比较时建议用==,而不是equal(),因为null==null不会报错,而且==会在编译期间检查类型匹配问题

继承

class test extends father{}

抽象类与抽象方法

  1. 前加abstrat的类无法构造对象
  2. 普通类不能包含抽象方法
  3. 抽象方法必须在子类里重构
abstract class Animal {
	abstract void makeSound();
	public void sleep() {
	System.out.println("The animal is sleeping.");
	}
}
class Dog extends Animal {
	void makeSound() {
	System.out.println("The dog barks.");
	}
}

数据类型

  1. boolean 在编译时常常转为int
  2. byte 8字节数据,范围-128~127,常用于大量数据处理,如文件读写,网络传输
  3. char
  4. double
  5. float
float f1 = 3.14f; // 注意要在数字后⾯加上 f 表示这是⼀个 float 类型
float f2 = 1.23e-4f; // 科学计数法表示⼩数
  1. int
  2. long

final

  1. final double PI = 3.14159265359;表示常量
  2. 表示⼀个不能被⼦类᯿写的⽅法。这在设计类时,确保某个⽅法的实现不会被⼦类修改时⾮常有⽤。
class Animal {
final void makeSound() {
System.out.println("动物发出声⾳.");
 }
}
class Dog extends Animal {
// 错误: ⽆法覆盖来⾃ Animal 的 final ⽅法
// void makeSound() {
// System.out.println("狗吠叫.");
// }
}
  1. 表示⼀个不能被继承的类。这在设计类时,确保其不会被其他类继承时⾮常有⽤。String 类就是 final 的。
final class Animal {
void makeSound() {
System.out.println("动物发出声⾳.");
 }
}
// 错误: 类型 Dog ⽆法继承 final 类 Animal
// class Dog extends Animal {
// void makeSound() {
// System.out.println("狗吠叫.");
// }
// }

finally

和 try-catch 配合使⽤,表示⽆论是否处理异常,总是执⾏ finally 块中的代码。

try {
int x = 10 / 0; // 抛出异常
} catch (Exception e) {
System.out.println("发⽣了异常:" + e.getMessage());
} finally {
System.out.println("finally 块被执⾏");
}

接口interface

抽象类是对类的抽象,是“是什么?”的问题,而接口是对方法的抽象,是“能做什么?”的问题。

具体见java接口

接口实现implements

public class MyThread implements Runnable {
public void run() {
// 线程执⾏的代码
 }
}

import导入

instanceof

⽤于判断对象是否属于某个类型(class)

Person p = new Student();
if (p instanceof Person) {
System.out.println("p is an instance of Person");
}
if (p instanceof Student) {
System.out.println("p is an instance of Student");
}

声明本地方法native

本地⽅法是指在 Java 代码中声明但在本地代码(通常是C 或 C++ 代码)中实现的⽅法,它通常⽤于与操作系统或其他本地库进⾏交互。
public native void nativeMethod();

null

与空指针异常息息相关

注释

  1. 单行//deqwd
  2. 多行/* */
  3. 文档注释/** */
    可使用javadoc命令根据文档注释生成项目文档

注释规约

  1. 类、字段、方法必须使用文档注释,不能使用单行注释和多行注释。因为注释文档在 IDE 编辑窗口中可以悬浮提示,提高编码效率。
  2. 所有的抽象方法(包括接口中的方法)必须要用 Javadoc 注释、除了返回值、参数、 异常说明外,还必须指出该方法做什么事情,实现什么功能。
  3. 所有的类都必须添加创建者和创建日期。
  4. 所有的枚举类型字段必须要有注释,说明每个数据项的用途。
  5. 代码修改的同时,注释也要进行相应的修改。

标签:void,System,class,学习,Animal,println,java8,out
From: https://www.cnblogs.com/adamaik/p/17688145.html

相关文章

  • 深度学习模型训练中,输入数据维度和标签数据维度调整方法
    forinputs,labelsintrain_loader:#使用numpy的transpose函数调整维度顺序inputs=np.transpose(inputs,(0,3,1,2))#将原输入数据最后一个维度换到第二个维度inputs=inputs.to(device)print(inputs.shape)#调试代码用......
  • 机器学习日志 新闻标题分类
    根据标题内容,分类有财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏、娱乐#导入必要的包importrandomimportjieba#处理中文fromsklearnimportmodel_selectionfromsklearn.naive_bayesimportMultinomialNBimportjoblibimportr......
  • Vue源码学习(三):<templete>渲染第二步,创建ast语法树
    好家伙,书接上回 在上一篇Vue源码学习(二):<templete>渲染第一步,模板解析中,我们完成了模板解析现在我们继续,将模板解析的转换为ast语法树 1.前情提要代码已开源https://github.com/Fattiger4399/analytic-vue.git手动调试一遍,胜过我解释给你听一万遍functionstart......
  • 基于Fast-RCNN深度学习网络的交通标志检测算法matlab仿真
    1.算法理论概述      Fast-RCNN是一种基于深度学习的目标检测算法,可以用于检测图像中的目标物体。交通标志检测是交通场景下的一项重要任务,它可以在道路上的交通标志被遮挡或损坏时提供帮助。基于Fast-RCNN深度学习网络的交通标志检测算法可以对交通场景下的图像进行检测,......
  • c语言学习之路--static的用法(笔记)
    1.static修饰局部变量时可以理解为将局部变量变为全局变量,如图:#include<stdio.h>voidtest(void){ inta=1; a++; printf("a的值为%d\n",a); }intmain(void){ inti=0; while(i<5){ i++; test(); } return0;}没有static时结果为a的值为2a的值为2......
  • Java学习_004 数据输入:案例2
    需求:三个和尚的身高需要手动输入,请用程序实现这三个和尚的最高身高。importjava.util.Scanner;publicclassMain{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);intheight1=sc.nextInt();intheight2......
  • Java学习_003 数据输入
    1.数据输入1.2Scanner使用的基本步骤(1)导包importjava.util.Scanner;(2)创建对象Scannersc=newScanner(System.in);(3)接受数据inti=sc.nextInt();1.3实例importjava.util.Scanner;publicclassMain{pub......
  • 学习笔记1
    目录知识点归纳苏格拉底挑战问题与解决思路实践过程先让chatgpt给我点linux命令,我来实践知识点归纳苏格拉底挑战问题与解决思路我下载了虚拟机,并装好了镜像文件,但是对于linux命令行的环境尚未配置,我咨询chatgpt给我回答实践过程先让chatgpt给我点linux命令,我来实践......
  • Java学习_002 案例2:三个和尚
    需求:一座寺庙里住着三个和尚,已知他们的身高分别为150cm、210cm、165cm,请用程序实现获取这三个和尚的最高身高。1publicclassMain{2publicstaticvoidmain(String[]args){3intheight1=150;4intheight2=210;5intheight3......
  • C++语言学习12
    STL算法组件STL算法库提供大量用途的函数(例如查找、排序、计数、操作),它们在元素范围上操作。注意范围定义为[first,last),其中last指代要查询或修改的最后元素的后一个元素。include不修改序列的操作调用函数之后,不会影响序列中本来元素的值all_of所有都满......