JavaSE学习笔记

R爬虫RSelenium环境搭建及简单应用 这是鄙人自己实践的一种可行的环境搭建,我会尽量详细的写下大家步骤。 阅读详情

1.类的概述

类就是事物的集合和抽象。它所代表的是这类事物所共有的一些行为和属性。

1、《修饰符》不仅可以修饰类,也可以修饰属性和方法。
private:只有在本类中可以看见。只有在本类中才可以去访问和调用。
protected:在本类或者在同一个包中可见。
public:对所有类可见。

默认(无修饰符):在本类或者同一个包里可见。

    1、方法与主方法:
如果没有返回类型,则必须写有void,不能省略。
如果有返回类型,则定义的方法类型和方法体内的返回值的类型一致。
public string returnString{
    return "返回一个字符串就好了";
}
2、主方法
    它是程序的入口。它有规定的格式,不可以自己定义。
    public static void mian(String[] args){

}

1、构造方法
   作用是用于初始化参数
   所有的数字变量全部设置为0
   所有的boolean类型全部设置为false
   所有的对象变量全部设置为空

**所有类实例化以后的对象都放在堆内存里,包括它的属性和方法。而引用是放在栈内存里。通过引用去访问堆内存里的属性和方法。
2.设计自己的构造方法:
构造方法的名称和类方法的名称必须相同,没有返回类型(没有void,首字母大写)。

3.如果自己写了有参构造方法,那么编辑器不会提供默认的构造方法。如果我们还想要无参数的构造方法,那么需要我们手动实现。

   1.方法的重载
在一个类中可以有多个方法共享同一个名称,只要参数不同就可以。
根据参数的类型和参数数量决定调用哪个方法。
重点***:具有相同的方法名称,不同得参数列表。
    不同得参数列表指得是:参数类型不同,参数的数量不同,参数的

次序不同。

在具有相同的方法名称的情况下,只看参数列表,其它的都不看。

对象的创建和使用

对象是类的实例。对象放在堆内存里,通过关键字new 和构造方法来实例化对象,为对象分配内存空间。而对象的引用是放在栈内存里,没有分配内存空间,只是为了去引用对象,对对象的属性和方法进行操作,就好像引用就是遥控器,而对象就是电视机。

    构造方法的重载

构造方法里面的参数可以相互调用。super()调用父类的构造器。

对象类型的参数传递
    java中只有值传递。基本类型好理解,直接传递。
        引用类型呢,传递的是引用,而这个引用就是值。
    基本数据类型作为参数,直接操作。

引用类型作为参数,操作的是引用类型指向堆内存中的对象。

Static 关键字
   1、静态变量
    静态变量是属于类的,和对象没有关系。非静态变量是属于某个对象的,每个对象都有该数据的副本。而静态变量只有一个。
            访问静态变量是通过(类名.变量名)来访问的

   2、静态方法
    用static修饰的方法为静态方法。访问静态方法是通过(类名.方法名)来访问的
    (/**一个文件里只允许有一个修饰符为Public的类,而且该类的名称必须和文件名相同**/)

    静态方法不能访问非静态变量(因为静态属性和方法已经加载好了,而非静态的属性和方法还没有被new出来)

    非静态方法可以访问静态变量(静态方法早已加载好了,此时已经手动new出来非静态的方法和属性)


静态属性或方法是在类加载的时候产生的
非静态的属性或方法是在new的时候产生的


   3、静态常量

public static final x =123;

     final关键字

    使用final修饰过的都是不可改变的。

    1、final修饰变量
        恒定不变的属性,可以使用final来进行修饰。变量名建议全部使用大写。final修饰的变量不能改变,如果在程序中重新赋值,编译报错。

    2、final修饰方法
        任何继承类无法覆盖(重写)该方法。但是重载不会受到限制。

    3、final修饰类
        该类不能作为任何类的父类。

类中的方法会全部被自动定义为final类型。

包的介绍

    1、包的介绍
        命名包
        未命名包

封装
    1、封装的概述

    2、实现封装

开放的越少,对我们越有利。通过set和get方法进行访问

继承概述
    父类、基类、超类
    子类、派生类

    1、继承的概述
        extends只能继承一个类,java不支持继承多种类

2、子类继承父类之后,子类可以调用父类的属性和方法,也可以重写父类的属性和方法,同时还可以增加自己的属性和方法。

实现继承        
    super();
      super()或者 super(有参)放在方法的第一个语句中。

      在调用子类的构造器的时候,如果没有显示的写出super,那么编译器会默认加上super()无参构造器。

      如果想调用父类的有参的构造器,那么就必须显示调用,编译器不会默认加上的。

创建子类对象的过程就是从底层的基类开始往上,一层层的调用构造方法。

继承关系

Java只支持单继承关系。在写程序的时候要有分层设计的概念,这样方便管理和拓展。

多态
        1、多态
    所谓多态就是一个对象的多种状态。
    在我们这个例子里面:
    Tiger可以看作是Tiger,也可以看作Animal
    Cat可以看作是Cat,也可以看作Animal

Dog可以看作是Dog,也可以看作Animal

抽象类
    1、抽象类的定义
       抽象类是为了子类提供一个规范。
        修饰符 abstract  类名{
            //类体
            修饰符 abstract 返回值类型 方法名(参数类表);
        /**抽象方法没有方法体 **/
    1、/** 定义一个类,如果这个类是抽象类,那么这个类至少有一个抽象方法**/
        2、/**在抽象类中的方法不一定是抽象方法,但是含有抽象方法的类一定是抽象类 **/
    2、抽象类的使用
       @Override 检测是否重写成功。
     1、  一个类继承了抽象类,就必须要重写该抽象类的所有抽象方法。

2、如果有一个类没有重写抽象类的抽象方法,那么这个类也要定义为抽象类。

接口的概述
    1、接口的概述

    interface 接口的修饰符(定义接口的时候没有class)

    abstract class 抽象类的修饰符
    extends只能是一个
    implements可以是多个

    接口只有抽象方法,比抽象类还要抽象。接口是彻彻底底的抽象。

    接口中只能包含抽象方法和常量,不能够有变量、初始化块、构造器。

    注意事项:
         1、接口的修饰符只有两种:默认和public.
         2、接口内的变量会被设置成共有的,静态的和最终的字段。

3、接口是抽象方法和常量的属性集合。

接口的实现

 实现方式:class 类名 implements 接口1,接口2,接口3{
    方法1(){
    }
    方法2(){
    }
    ......
}
接口实现的注意事项:
    1、为接口中所有的方法提供具体的实现
    2、必须遵守重写的所有规则:
                    1、子类的重写方法不能抛出更大的异常
                2、子类的重写方法不能有更小的访问范围

    3、保持相同的返回类型。

多继承也就是继承多个接口
    1、这些接口之间需要使用逗号来分隔开。

2、如果这几个接口都有相同的方法和相同的变量,那 么相同的变量是可以通过 (接口名.变量名) 的形式来访问。相同的方法将被其中的一个接口使用。相同的方法只重写一个就可以了,不用管是哪个接口的方法。

接口的应用
    1、方法的修饰符
    接口中变量的修饰符:public static final
    接口中方法的修饰符:public abstract 

    2、接口类型引用变量

(重点)

成员内部类
   1、内部类的概述
    一个类被嵌套定义在另一个类中,那么这个类就被称为内部类。包含内部类的类就被称为外部类。
    内部类相当于外部类的成员变量或者是方法。

    如何构造内部类
        Outer out = new Outer();
        Outer.Inner in = out.new Inner();

in.print();

匿名内部类

    通过内部匿名类也就是父类的子类去继承父类的方法,然后去重写方法,实现调用。
public class TestInner {
public static void main(String[] args) {
    InterfaceI i =new InterfaceI() {

        @Override
        public void ShowMe() {
            System.out.println("这是匿名内部类的ShowMe方法");
        }
    };
    i.ShowMe();
    Pa  pa=new Pa(){
        public void eat(){
            System.out.println("子类在吃东西");
        }
    };
    pa.eat();
}

}
interface InterfaceI{

public void ShowMe();

}
class Pa{
public void eat(){
System.out.println(“父类在吃东西”);
}

}

1、局部内部类
    在类的局部位置进行定义的类叫做局部内部类。(在方法内定义的类叫做局部内部类)
    在局部内部类中去访问方法当中的局部变量时,该局部变量必须定义成是final类型的。但是访问外部类中的成员变量是可以随便访问的。 
    为什么局部变量是final类型的?

因为方法当中的局部变量是随着方法的执行完毕后,局部变量也随即被释放掉内存,也就死掉了。但是局部内部类的生命周期不会立即死掉,所以需要访问的局部变量必须是恒定不变的,不能修改的final类型。

静态内部类
    1、在内部类前添加static修饰符。 
    2、静态内部类中可以声明static成员变量,非静态内部类中不可以。
    3、静态内部类不可以使用外部类的非静态成员变量。
    4、创建静态内部类的对象,不需要其外部类的对象。

    //创建非静态内部类的形式
    Outer o = new Outer();
    Outer.Inner i =o.new Inner();

    //创建静态内部类的形式

Outer.Inner i = new Outer.Inner();

引用外部类的对象
    1、引用外部类的对象
        Inner:this.count
        Quter:Quter.this.count

    2、内部类的继承
    public class Test extends A.B{
        public  Test(A a){
        a.super();
        }
    } 
    class A{

        class B{

        }
    }       

想要继承一个内部类,必须要通过构造器对内部类中的外部类进行实例化。
public Test(A a){
a.super();

}

异常概述
 1、什么是异常
    就是程序运行过程中出现的不正常的现象。
    try:把可能发生异常的代码包起来,发生异常时,将异常抛出
    catch:捕获异常并处理
    finally:不管是否法伤异常,都会执行
    throw:手动引发一个异常
    thorows:定义任何被调用方法的异常。
 2、异常出现的原因
    用户输入错误
    代码的错误
    环境因素

异常机制保证了程序的健壮性!

异常的分类
     Throwable
     Error      Exception
        Error:它是Java运行时的内部错误以及资源耗尽错误。很难恢复,不期望用户来处理。
     Exception:
     RuntiemException:运行时异常。(类转换,空指针,数组越界等的异常)

非 RuntiemException:由环境因素导致。

获取异常信息

程序发生异常的时候,程序就直接从try执行到catch语句块,不再继续往下执行。如果try中的代码块没报错,则不会执行catch。

异常声明
    :指一个方法不处理它所产生的异常    ,而是调用层次向上传递,谁调用的这个方法,谁来处理。
    public class Test {

public static void main(String[] args) {
    Test test = new Test();
    System.out.println("main方法开始执行");
    try {
        test.Test1();
    } catch (ArithmeticException e) {
        System.out.println(e.getMessage());
    }
    System.out.println("main方法执行完毕");
}

public void Test1()throws ArithmeticException{
    System.out.println("Test1开始执行");
    System.out.println(1/0);
    System.out.println("Test1执行完毕");
}
public void Test2(){
    Test1();
}

}


手动抛出异常 
  throw exception; 参数exception表示要抛出的异常对象,该对象是     throwable类的子类,而且只能是一个。
  try catch finally是可以嵌套使用的。

    public class TrycatchfinallyTest {
    public static void main(String[] args) {
        double a = Math.random();


        try {
                if(a>0.5){
                System.out.println(a+"不报错");
                }else{
                    throw new Exception();
                }

        } catch (Exception e) {
            System.out.println("这是外层捕获对象"+e);
            try {
                System.out.println(1/0);
            } catch (ArithmeticException e1) {
                System.out.println("这是内层捕获的对象"+e1);
            }finally{
                System.out.println("这是内层的finally块");
            }
        }finally{
            System.out.println("这是外层finally块");
        }
    }

}

异常链:
    两个或者多个不同得异常出现在同一个程序中,并且会发生嵌套抛出,我们称之为异常链。

        public class ExceptionChainTest {
public static void main(String[] args)  {
    Calculator c =new Calculator();

    try {
        c.chufa(4.5,0);
    } catch (NumberCalculateException e) {
        e.printStackTrace();
        System.out.println("错误原因");
    }

}

}

class Calculator{
public double chufa(Double a,double b) throws NumberCalculateException{
if(b==0){
NumberCalculateException e =
new NumberCalculateException(“计算错误”);
NegtiveNumberException e1 =
new NegtiveNumberException(“除数不能为0”);
e.initCause(e1);
throw e;
}
return 0;
}
}
class NegtiveNumberException extends Exception{
public NegtiveNumberException(String msg){

    super(msg);
}

}
class NumberCalculateException extends Exception{
public NumberCalculateException(String msg){
super(msg);
}

}

定义自己的异常类

1、创建自己的异常类

1、继承Throwable
2、继承Exception
修饰符 class 类名 extends Exception{
    //类体
}

2、使用自己的异常类
第一自己的异常,一般用于throw
public class AgeTese {
public static void main(String[] args) {
try {
AgeTese.AgeLeval(1000);
} catch (IllegalAgeException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static String AgeLeval(int age) throws IllegalAgeException{
if(age>=10 && age<=18){
return “少年”;
}else if (age>18 && age<=30) {
return “青年”;
}else if (age>30 && age<=60) {
return “中年”;
}else if (age>60 && age<=120) {
return “老年”;
}else{
//抛出自己定义的异常
throw new IllegalAgeException(“非法的年龄!!!!!!”);
}
}

}

/**
* 定义自己的异常类
* @author Administrator
*
*/
class IllegalAgeException extends Exception{
public IllegalAgeException(String msg){
super(msg);
}

}

更正异常的一个知识点

try 不能单独出现,后面必须跟着catch 或者finally 或者两者都有。
例如:try{ 或者 try{
}catch{

                 }finally{
                   }
}catch{
}

或者 try{

}finally{

}

线程与进程
1、线程与进程
进程:执行中的程序。
线程:轻量级的进程。
线程本身不能单独运行,必须放在一个进程中才能执行。
2、Java的线程模型
1、新建状态
线程被创建之后便处于新建状态
2、就绪状态
新建状态的线程调用start()进入就绪状态
阻塞状态的线程解除之后进入就绪状态
3、运行状态
处于就绪状态的线程获得了CPU的资源,该线程就进入运行状态。

4、阻塞状态
    是一个正在运行的线程,因为一些原因让出了CPU资源(获得时间片)暂时中止而进入的状态。
5、终止状态
    1、正常终止
    2、强制终止:stop / destroy 
    3、异常终止:当线程执行过程中产生了异常,线程就会终止。

创建线程的第一种方式
    1、继承Thread类创建线程

    class 类名 extends Thread{
        public void run(){
            //相关代码
            }

}

实现Runnable接口

1、实现Runnable接口
class 类名 implements Runnable{
public void run(){

    }
}
A a=new A();
Thread t =new Thread(A);
Thread t1=new Thread(A,"线程1")

2、两种方法的比较
extends Thread 单继承

implements Runnable 多实现 使用的时候非常灵活

多线程应用

1、多线程并发执行
Java对于线程启动后唯一能保证的是每个线程都被启动并且结束。但是对于哪个先执行,哪个后执行,什么时候执行,是没有保证的。

2、线程优先级
Java中优先级高的线程有更大的可能获得CPU,但不是优先级高的总是先执行,也不是优先级低的线程总是后执行。


线程调度的三个方法

1、休眠方法sleep(毫秒数) sleep(毫秒数,纳秒数)

2、暂停方法yield() a.yield() 指的是a释放资源后,让其他的线程来争夺。也有 可能a又夺得资源。

3、挂起方法join() a.join()


线程同步问题

多个线程共享一个资源没有进行控制。

//package com.practices.day58;

同步问题Java的解决方案

1、同步问题的Java的解决方案
同步方法:当线程进入同步方法的时候,会获得同步方法所属对象的锁,一旦获得对象锁,则其他线程不能再执行被锁对象的其他任何同步方法。只有在同步方法执行完毕之后释放了锁,其他线程才能执行。
//package com.practices.day59

    synchronized 方法声明{

    }


同步块:

    synchronzized(资源对象){
        //需要进行同步的方法 
    }

死锁问题

1、死锁问题

线程A现在占有资源2,需要请求资源1

线程B现在占有资源1,需要请求资源2

生产者和消费者模型:
    涉及到线程同步,两者之间的实时通信。
    源码:package com.practices.day62;
【华为OD机试真题】4、字符统计及重排 | 机试真题+思路参考+代码解析(C++、Java、Py) 题目描述 >给出一个仅包含字母的字符串,不包含空格,统计字符串中各个字母(区分大小写)出现的次数, 并按照字母出现次数从大到小的顺序。输出各个字母及其出现次数。 如果次数相同,按照自然顺序进行排序,且小写字母在大写字母之前 阅读详情

相关推荐

KUKA .RSI 软件包

KUKA RSI软件包通过XML文件使得机器人与外部设备(传感器通讯)通讯成为了可能,但仍存在诸多限制,该模块最多允许9台设备进行连接,有限的IO口,匮乏的功能,并且需要投入大量精力琢磨相关说明文档。为此开发人员针对KUKA实时通讯,做了一些开源的接口使得上位机与机械臂的通讯更为简单。

huhu7777的博客 3293

构造方法

                构造方法 构造方法: 作用是用于初始化参数 所有的数字变量全部设置为0默认值 所有的Boolean类型全部设置为false 默认值 所有的对象变量全部设置为null 默认值 如果自己写了有参的构造方法,那么编辑器不会在提供默认的构造的构造方法了。 如果我们还想用无参的构造方法,那么需要手动实现。 package demo6; ...

weixin_30469895的博客 94

AXI VIP配置全指南:从报错到成功仿真的完整流程(Vivado 2023版)

本文详细解析了在Vivado 2023环境中配置AXI Verification IP(VIP)进行协议仿真的完整流程。针对常见的include和import报错问题,提供了具体的解决方案和代码示例,指导用户从IP核创建、参数化配置,到构建可工作的仿真测试平台,最终实现成功仿真。

gpt4scribbler的博客 233

【Java】JavaSE学习笔记

本文包括Dos命令、基础概念、变量类型、类型转换、变量与常量、运算符、包、JavaDoc、输入输出、程序流程、数组、常用类以及面向对象编程(OOP)的基础知识。文章详细介绍了Java的运行机制、环境变量配置、变量命名规范、逻辑运算符、数组的声明与初始化、Arrays类的常用方法、时间类、字符串类、浮点数运算类、随机数类等。此外,还简要提及了面向对象编程的本质,即以类组织代码,以对象封装数据。这些内容为Java学习者提供了全面的基础知识和操作指南。

ayaishere_的博客 1011

PuTTY使用方法

PuTTY是一款开源SSH/Telnet客户端,主要用于Windows系统连接Linux服务器。使用步骤包括:下载安装PuTTY,输入服务器IP和端口(默认22),可选择保存会话配置。支持密码和SSH密钥认证(需转换.pem为.ppk格式)。首次连接需确认主机密钥,成功登录后可执行Linux命令。其他功能包括会话日志记录、X11转发和端口隧道配置。操作完成后输入exit断开连接。

特网云计算 3160

Ubuntu配置Qt Creator树莓派交叉编译环境一步到位

本文详细指导在Ubuntu系统上配置Qt Creator树莓派交叉编译环境。从工具链安装、sysroot创建到Qt库编译,逐步讲解如何搭建完整的ARMv7交叉编译工具链,实现高效开发树莓派应用。

1277

【JavaSE学习笔记】chapter07-集合-小练习

JavaSE学习笔记-chapter07-集合-小练习 学习资源:动力节点java学习

Addery的学习日常 561

PLC模糊控制模糊PID(梯形图实现+算法分析)

博途PLC的模糊PID控制详细内容请查看下面的博客文章:Matlab仿真+博途PLC模糊PID控制完整SCL源代码参考(带模糊和普通PID切换功能)_博途怎么实现模糊pid_RXXW_Dor的博客-优快云博客模糊PID的其它相关数学基础,理论知识大家可以参看专栏的其它文章,这里不再赘述,本文就双容水箱的模糊PID问题做详细讲解(包括所有源代码和模糊规则设置参数)。

RXXW_Dor的博客 5884

【狂神说Java】Java零基础学习笔记-JavaSE总结

【狂神说Java】Java零基础学习笔记-JavaSE总结

ঞ黎明の微笑的博客 318

SwinTransformer 改进:SSPCAB模块(2024最新改进方法)

SSPCAB(Spatial Pyramid Pooling with Channel Attention Block)是2024年提出的一种新型神经网络架构改进方法,专注于在保持高精度的同时显著降低计算复杂度和参数量。该方法通过创新的空间金字塔池化与通道注意力机制的结合,实现了网络结构的紧凑化和运算效率的大幅提升。核心创新点1. 混合空间金字塔池化(Hybrid Spatial Pyramid Pooling, HSPP)多尺度动态核池化:根据输入特征图尺寸动态调整池化核大小和步长交叉级联结构。

Henry的博客 1309

曲线最小二乘拟合基础

介绍曲线拟合的最小二乘原理,介绍了常规最小二乘和正交最小二乘算法,最后介绍了MathNet矩阵运算库的基本操作。

yh523的博客 1303

JavaSE学习笔记 Day7

debug、数组(初始化、遍历、默认值)

CHiN_951的博客 1264

元数据治理实战:构建企业数据地图与血缘体系

元数据(Metadata)是描述数据的数据,是你能了解“数据是怎么来的”、“它是做什么的”、“能不能用”的基础信息。📌 举个例子:order_idstringods_order定义:平台内用户在订单系统中产生的唯一订单编号更新时间:每天凌晨 2 点,由 Airflow 调度任务生成所属人:张三(数据开发部)🔍 这些信息本身不直接参与计算,但它们是数据可管理、可追踪、可评估的基础。模块实战建议元数据类型技术 + 业务 + 操作元数据三类统一治理治理路径。

晴天彩虹雨的博客 290

【JavaSE】常用类学习笔记

包装类的分类针对八种基本定义相应的引用类型—包装类有了类的特点,就可以调用类中的方法包装类的继承关系BooleanCharacterObjectComparableByteShortIntegerLongFloatDoubleNumberComparableNumberObject包装类和基本数据类型的转换jdk5前的手动装箱和拆箱方式,装箱:基本类型->包装类型,拆箱反之jdk5之后的自动装箱和拆箱方式自动装箱底层调用的是valueOf方法,比如八大包装类常用方法Integerint:将字符串转为。

qq_24052051的博客 777

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

【JavaSE】枚举和注解学习笔记

规定多选一数据类型的解决方案-枚举枚举的两种实现方式自定义实现枚举使用enum关键字实现枚举自定义类实现枚举不需要提供setXxx 方法,因为枚举对象值通常为只读.对枚举对象/属性使用 final + static 共同修饰,实现底层优化枚举对象名通常使用全部大写,常量的命名规范枚举对象根据需要,也可以有多个属性自定义类实现枚举小结小结:进行自定义类实现枚举,有如下特点:构造器私有化本类内部创建一组对象对外暴露对象(通过为对象添加public final static修饰符)

qq_24052051的博客 753

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【JavaSE学习笔记】chapter06-常用类

学习资源:动力节点动力节点的个人空间-动力节点个人主页-哔哩哔哩视频 (bilibili.com)

Addery的学习日常 771

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Java学习笔记 - JavaSE

JavaSE全部知识点总结

CLXKZJ的博客 1127

【JavaSE韩顺平学习笔记】6. 数组

第一章 Java概述第二章 常规操作和DOS第三章 变量第四章 运算符,标识符第五章 程序控制结构第六章 数组。

qq_53479519的博客 361

JAVASE 学习笔记(二)

主要介绍了Java面向对象中的几个概念:1. 构造方法与set方法的区别:构造方法用于创建对象并初始化成员变量,每次new都会创建新对象;set方法用于修改已存在对象的属性值。2. IDEA快捷操作:使用Alt+Insert快速生成set/get方法和构造方法。3. 继承特性:包括单继承、多层继承规则,以及构造方法的调用顺序(先父类后子类)。4. 方法重写(Override)以及其与方法重载的区别

2301_80282530的博客 803

JavaSE学习笔记 Day16

常用工具类、字符串

CHiN_951的博客 961

【JavaSE韩顺平学习笔记】1.概述

第一个版本1995年;Java之父:詹姆斯·高斯林(James Gosling)Java技术体系平台:Java SE(standard edition),Java EE(enterprise edition),Java ME(micro edition)特点:面向对象的(oop),健壮的(强类型机制、异常处理、垃圾的自动收集等),跨平台性的,解释性的(不能直接被执行需要解释器–>编译性语言可以直接被执行,eg.c/c++)开发工具:sublime,IDEA,eclipse。

qq_53479519的博客 358

【JavaSE学习笔记】

JavaSE学习笔记

qq_43050258的博客 343

我的javaSE学习笔记

layout: post title: “我的JAVASE自学笔记” date: 2019-05-18 20:23:25 +0800 我的JAVASE自学笔记 作者:吴甜甜 个人博客网站: wutiantian.github.io 基础知识 学习书籍:《疯狂JAVA讲义》李刚 搭建命令行编译环境 下载软件jdk jdk是开发java要用到的工具,里面包括 ①jre (java ru...

吴甜甜的技术博客 1954

JavaSE学习笔记 Day18

单列集合实现类

CHiN_951的博客 1102

【JavaSE韩顺平学习笔记】9. 构造器

第一章 Java概述第二章 常规操作和DOS第三章 变量第四章 运算符,标识符第五章 程序控制结构第六章 数组第七章 递归,重载,可变参数,作用域第八章 构造器。

qq_53479519的博客 310

JavaSE学习笔记 Day1

Java概述和环境搭建

CHiN_951的博客 399
上一篇: 学习Mars老师Android Activity视频整理(1)
下一篇: 学习javaSE基础中遇到的一些难点的总结
bryn_li
博客等级 码龄11年 2粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值