先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注Java)
正文
//并能进行数据输入错误等的异常处理
public class Student {
//属性
private int no;
private String name;
private int age;
private double soccer;
//构造方法
public Student() {
}
public Student(int no, String name, int age, double soccer) throws MyException {
if( no < 0 ){
throw new MyException(“学号不可以小于零”);
}
if (“”.equals(name)){
throw new MyException(“名字不可以为空”);
}
if (age < 0){
throw new MyException(“年龄不可以小于零”);
}
if (soccer < 0 || soccer > 100){
throw new MyException(“成绩不能低于0分,高于100分”);
}
this.no = no;
this.name = name;
this.age =age;
this.soccer =soccer;
}
//set和get方法
public int getNo() {
return no;
}
public void setNo(int no) {
this.no = no;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getSoccer() {
return soccer;
}
public void setSoccer(double soccer) {
this.soccer = soccer;
}
//重写toString方法
@Override
public String toString() {
return “Student{” +
“no=” + no +
“, name='” + name + ‘’’ +
“, age=” + age +
“, soccer=” + soccer +
‘}’;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Student student = (Student) o;
return no == student.no &&
age == student.age &&
Double.compare(student.soccer, soccer) == 0 &&
Objects.equals(name, student.name);
}
@Override
public int hashCode() {
return Objects.hash(no, name, age, soccer);
}
}
public class SystemOfStudent {
//聚合类
private Student[] students;
//构造方法
public SystemOfStudent() {
}
public SystemOfStudent(Student[] students) {
this.students = students;
}
//输出所有学生信息
public static void printInfo(Student[] students){
for (int i = 0; i <students.length ; i++) {
System.out.println(students[i]);
}
}
//查找学生信息,通过学号查找
public void selectStudent(int no){
//遍历数组
for (int i = 0; i <students.length ; i++) {
if (no == students[i].getNo()){
System.out.println(students[i]);
return;
}
}
System.out.println(“不存在这个学生”);
}
//学生按成绩排序,由高到低
public static Student[] sortStudent(Student[] students){
for (int n = students.length - 1; n >= 0 ; n–){
for (int i= 0; i < n ; i++) {
//比较
if (students[i].getSoccer() > students[i + 1].getSoccer()){
//交换
Student student = students[i];
students [i] = students[i+1];
students[i+1] = student;
}
}
}
return students;
}
//set和get方法
public Student[] getStudents() {
return students;
}
public void setStudents(Student[] students) {
this.students = students;
}
}
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
//创建三个学生对象
Student student1 = null;
Student student2 = null;
Student student3 = null;
//将这些学生对象存入管理系统
Student[] students = {student1,student2,student3};
SystemOfStudent systemOfStudent =new SystemOfStudent(students);
//从键盘上录入多个同学信息(包括学号 姓名 年龄 成绩)
for (int i = 0; i < systemOfStudent.getStudents().length; i++) {
try {
System.out.println(“请输入学号:”);
int no = scanner.nextInt();
System.out.println(“请输入姓名:”);
String name = scanner.next();
System.out.println(“请输入年龄:”);
int age = scanner.nextInt();
System.out.println(“请输入成绩:”);
double score = scanner.nextDouble();
systemOfStudent.getStudents()[i] = new Student(no,name,age,score);
} catch (MyException e) {
e.printStackTrace();
}
}
//输出所有学生信息
SystemOfStudent.printInfo(systemOfStudent.getStudents());
systemOfStudent = new SystemOfStudent(SystemOfStudent.sortStudent(students));
SystemOfStudent.printInfo(systemOfStudent.getStudents());
systemOfStudent.selectStudent(2);
}
}
**2.使用集合类设计实现一个小型学生成绩管理系统,要求具有以下功能:
从键盘上录入多个同学信息(包括学号 姓名 年龄 成绩)、输出所有学生信息、查找学生信息、能对学生按成绩排序,并能进行数据输入错误等的异常处理。**
//自定义异常
public class MyException extends Exception{
public MyException() {
}
public MyException(String message) {
super(message);
}
}
import java.util.Objects;
//学号 姓名 年龄 成绩
//并能进行数据输入错误等的异常处理
//并且实现compareTo方法
public class Student implements Comparable{
//属性
private int no;
private String name;
private int age;
private double soccer;
//构造方法
public Student() {
Ending
Tip:由于文章篇幅有限制,下面还有20个关于MySQL的问题,我都复盘整理成一份pdf文档了,后面的内容我就把剩下的问题的目录展示给大家看一下
如果觉得有帮助不妨【转发+点赞+关注】支持我,后续会为大家带来更多的技术类文章以及学习类文章!(阿里对MySQL底层实现以及索引实现问的很多)
吃透后这份pdf,你同样可以跟面试官侃侃而谈MySQL。其实像阿里p7岗位的需求也没那么难(但也不简单),扎实的Java基础+无短板知识面+对某几个开源技术有深度学习+阅读过源码+算法刷题,这一套下来p7岗差不多没什么问题,还是希望大家都能拿到高薪offer吧。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-9wABziJF-1713417277275)]
[外链图片转存中…(img-l3vUooFF-1713417277276)]
吃透后这份pdf,你同样可以跟面试官侃侃而谈MySQL。其实像阿里p7岗位的需求也没那么难(但也不简单),扎实的Java基础+无短板知识面+对某几个开源技术有深度学习+阅读过源码+算法刷题,这一套下来p7岗差不多没什么问题,还是希望大家都能拿到高薪offer吧。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Java)
[外链图片转存中…(img-OK3SyvxC-1713417277276)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!