java基础(一)

【Java基础一】 1.JDK(Java Development kit)开发者工具包,在Oracle官网下载(link2.LTS(Long-Term Support) Version 有JDK 8、11、1721。3.验证安装成功与否:cmd中输入java -version 、javac -version看版本号。4.JDK中最重要的两个命令程序 :javac:编译工具 ,java:执行工具一般简称IDEA,在代码错误提醒,智能代码补全等多方面表现的都非常优秀,是进行ava开发时,很多企业首选的开发工具。 阅读详情

                                          JAVA EE基础知识学习

1. Java语言概述

Java语言诞生于1995年在sun,在09年被oracle收购

1.    简洁有效,面向对象,简单易学

2.    跨平台性好,java写好的程序可以在任何系统上运行,一次编译到处运行,java为每一个平台都提供了一个jvm(java虚拟机)

3.    Java语言适合大型企业级管理系统,大型互联网系统(分布式系统)

2. Java语言分支

Java SE(标准版),是java基础,

Java ME (移动版) 适合移动端的开发

Java EE (企业版) 面向企业级管理系统

3. java环境的搭建

JRE:java Runtime environment (java运行环境)

       

JVM:java virtual machine(java虚拟机)java程序就是在jvm中运行的

Java核心类库:JRE提供的能让程序运行的java类

JDK:java development kit(java开发工具)

我们只要安装JDK就可以了

JDK的安装:

Jdk安装目录

等待安装

Jre安装目录,

JDK安装目录不要用中文

4. JDK环境变量的配置

bin:可执行命令的目录

db: java语言提供的数据库

include:jdk提供的本地接口编程

jer:java运行环境

lib:java开发包

src:jdk源码包

 

jdk需要使用dos命令来执行-环境变量可以让我们在任意目录执行想要执行的程序

打开环境变量

右键我的电脑—属性—高级系统设置—高级—环境变量

Systemroot是系统的根

配置jdk环境变量

在系统变量栏中—新建—如下图jdk环境变量配置完毕

5. java的第一个程序

类的语法编写

Class 类名{

        类的体

}

示例

6. java的运行机制

我们自己写的代码都是源代码(.java),源代码不能执行,必须编译成.class文件才可以运行

编译java源文件:Javac 类名.java

运行javaClass文件:java字节码文件名

7. Class path类路径

如果配置了classpath环境变量的话,在执行代码的时间就会去找这个class文件运行

8. 标识符

1.    在java语言中,对各种变量,方法和类等要素命名是所用的字符序列就是标识符,这些标识符有jdk定义好的,也有我们在开发过程中自己定义的

2.    Java标识符由26个英文字符大小写,数字0-9,符号_$,注意—数字不能开头

3.    Java中严格区分大小写

4.    定义标识符需要见名只意

5.    类名和接口的规范-首字母大写,多个单词,每个单词首字母大写

6.    变量名和方法名规范-首字母小写-第二个单词可以首字母大写

7.    包名规范—所有的字母都必须小写

8.    常量规范—所有的字母都大写,多个单词之间使用_下划线分割

9. 关键字

Jdk定义的标识符就是关键字,我们不可以使用。我们定义标识符是要避开关键字

10.     java的注释

帮助就是方便我们阅读代码的

单行注释--//

多行注释--/**/

文档注释—(对类或者方法的说明)--/****/

11.     进制

常用的进制有:二进制,八进制,十进制,十六进制

十进制示例

12. 常量和变量和数据类型

常量和变量

程序运行

1.    开辟内存空间

2.    提取数据(.Class)

3.    Cpu调度运行

1.

1.    常量

在程序运行期间数据不发生变化的量就是常量

整数的常量:24H 365天

空常量:null

Boolean类型值:true和false

小数:重力系数9.8 圆周率3.14

字符:男

2.    变量

在程序运行期间可以存储变化的数据的量就叫做变量

变量的定义—数据类型 变量名=变量值;

数据类型

八大基本的数据类型:

整数类型占用的存储空间

小数类型占用存储空间

字符类型占用存储空间

Char—2个字节

布尔类型占用存储空间

       Boolean—true和false---2个字节

12.     变量的定义和使用

对变量的操作:存值和取值

语法:数据类型 变量名=变量初始值;:

变量的定义位置:定义在方法中或者语句块中

//整数类型

byte age=10;

short a=100;

  int b=400;

long c=900;

//小数类型

  float d=49.6F;

  double e=300.3D;

  //字符型

  char sex='男';

  //布尔类型

boolean flage=true;

13.    变量的作用范围

变量只能在当前的大括号和当前大括号的子括号内使用

14.     数据类型自动转换上

基本数据类型做为类的属性时的默认值

 

数据类型

默认值

Byte

0

Short

0

Int

0

Long

0

Float

0.0

Double

0.0

char

‘\u0000’

boolean

false

 

15.     数据类型自动转换下

Byteàshortàintàlongàfloatààdouble

 

八大数据类型除了boolean类型其他的都可以转换

1.  自动转换

变量在做计算的时间可能有溢出的情况,那么java语言采用自动类型转换的方式来处理,小的数据类型向大的数据类型空间去转换

Byte,short,charà在做数据运算的时间会自动提升为int数据类型

Char类型的数据在参与运算的时间每个值都对应一个ASCII码值

Int和其他数值计算也会溢出,int不会提升,而是直接损失精度

0111 1111    1111 1111  1111 1111   1111 1111—int的二进制表型形式

Int不能自动进行提升

 

任何整数数据类型和long类型做数据运算时溢出的话都会自动转换成long类型

 

Folat类型和folat类型进行数据运算不会提升

常量和常量进行运算,只要定义的数据不超出其范围就可以

Float和所有整数类型进行运算,都会转换成float

 

Double和常量进行计算会自动转换成double类型

Double和float进行运算会自动装换为double

Double和所有的整数类型进行运算会自动转换为double

16.     数据类型强制转换

大空间的数据类型向小空间的数据类型装换

语法:数据类型 接受的变量=(目标数据类型) 变量名

把int型强制装换为short类型

      

强制转换可能会损失精度,因为要转换的变量的值有可能会超出目标类型的大小

Char类型除了boolean类型其他的类型都可以转

17.     算数运算符

1.  算数运算符

四则运算:+  -  *  /

取余(取模):%

自增和自减:i++   i-- ++i   --i

后加加或者减减

前加加或者减减

后加加或者后减减和前加加或者前减减的区别

当后加加或者后减减和其他代码在同一行的时间,先使用后加加或者后减减之前的值在进行运算,如果不在同一行,后面的一行就会得到后加加或者后减减后的值

前加加或者前减减就是先做加一或者减一在在使用加减完的值

2.  比较运算符

==  !=  > >= <  <=

==:等于(判断双等号两边是否相等)

!=:不等于

>:大于

>=:大于等于

<:小于

<=:小于等于

3.  逻辑运算符

&  | ^  &&  ||  !

 

&:当多个表达式进行运算的时间,只有所有的表达式计算结果都是true,整体的结果才是true

&:(与)所有的表达式都会执行

      

 

 

 

 

表达式1

表达式2

表达式3

True

true

True

true

false

true

false

true

False

false

false

false

|:当多个表达式进行运算的时间,只有所有的表达式计算结果都是false,整体的结果才是false

|:(或)所有的表达式都会执行

表达式1

表达式2

表达式3

True

true

True

true

false

True

false

true

True

false

false

false

&&:如果发现第一个表达式为false,整体结果就是false,就不会再执行其他表达式

&&:(双与)只要一个条件不满足,接下来的表达式就不会被执行

表达式1

表达式2

表达式3

True

true

True

true

false

true

false

true

False

false

false

false

       ||:如果发现第一个表达式为true,整体结果就是true,就不会再执行其他表达式

       ||:(双或)只要一个条件不满足,接下来的表达式就不会被执行

表达式1

表达式2

表达式3

True

true

True

true

false

True

false

true

True

false

false

false

注(&&和||是短路逻辑—效率高)

       ^:如果两个表达式相同就是false,不同的话就是true,两边都参加计算

       !:取反(把结果反过来)

4.  位运算符

<<    >>     >>>    &   |    ^

<<:将二进制数据向左移动,低位产生的空位用0来补齐

>>>:无符号右移,将参与运算的数据向右移动,在高位产生的空位0补齐

计算机中所有的运算用的都是补码

原码              反码             补码

        正数(3)    0000 0011                0000 0011        0000 0011

        负数(-3)   1000 0011        11111100        1111 1101

 

 

 

 

5.赋值运算符

= +=  -=  *=  /=   %=

=:将右边的数值赋给左边的变量

+=:int x=2,  x+=3,  相当于x=x+3

 

 

18.    if判断

一个if:语法:if(条件判断表达式){语句块}

多重if:语法:if(条件判断表达式){执行语句}else{执行语句}

多重if:语法:if(条件判断表达式){执行语句块}elseif(条件判断表达式){执行语句块}else{}

19.     switch的用法

由上到下用switch中的表达式和值进行比较,如果匹配成功 就执行case后的语句,在执行break的时候调处switch,如果一个也没有匹配上就执行default默认情况

语法:

Switch(表达式){

Case常量 1:

执行语句1;

Break;

Case常量 2:

执行语句2;

Break;

……………………

Default:

执行语句;

Break;

注(表达式的值可以是byte,short,char,7之后可以用String类型)

}

20.    三元运算符

语法:判断表达式?表达式:表达式2

三元运算符适合判断两个值到底使用那一个的情况

 

【图像增强】论文精读:Correlation Matching Transformation Transformers for UHD Image Restoration(UHDformer) 论文题目:Correlation Matching Transformation Transformers for UHD Image Restoration —— 用于UHD图像恢复的相关匹配变换变压器AAAI 2024!本文提出了一种用于超高清(UHD)图像恢复的通用变压器UHDformer。UHDformer包含两个学习空间:(a) 高分辨率空间中的学习,(b)低分辨率空间中的学习。前者学习多层次的高分辨率特征,融合低层特征,重建残差图像,后者从高分辨率特征中学习更多的代表性特征,以促进更好的恢复。 阅读详情

相关推荐

从零开始:用摩尔线程S4000运行开源AI项目的完整流程

本文详细介绍了如何使用摩尔线程S4000 GPU从零开始运行开源AI项目的完整流程,包括硬件选择、驱动安装、容器化环境配置以及典型AI项目的实战部署。通过性能优化技巧,显著提升推理速度,适合开发者快速上手国产GPU的AI应用开发。

weixin_29231725的博客 583

java中的Environment类的简单使用

在做android项目时,有没有经常遇到这种情况,要把下载的文件或是本地生成的文件存储到sd卡中。那么我们又怎么知道有没有SD卡呢,这时候,java就提供了一个访问外部环境的类Environment类。关于这个类的详细方法写一下,加深自己的印象吧。 Environment  是一个提供访问环境变量的类。                               Environmen

caohuicong的博客 1万+

拆解一个带主动均衡的BMS模块:从变压器、MOS管矩阵到控制逻辑,图文详解内部设计与成本构成

本文深度拆解了一款带主动均衡功能的BMS模块,详细解析了其核心架构、元器件选型与成本构成。通过高频变压器、MOS管矩阵等硬件设计,该模块实现了高达87%的能量转移效率,远超普通被动均衡方案。文章还揭示了汽车级PCB设计、软件策略优化等关键技术细节,为锂电池管理系统设计提供了实用参考。

weixin_42638178的博客 349

java 蓝色注释_Java-三种注释的用法

一、单行注释以“//”开头,后面接要说明的内容。使用范围没有什么规定,比如开发前,我们可以用单行注释把思路写下来,开发后,可以把局部说明写下来供后人参考。比如我们一般在实体类的属性后面用单行注释注明(如下):public class User implements Serializable{private String id;// 自增型IDprivate String username;// 用...

weixin_39725885的博客 960

5分钟搞定阿里云千问大模型API申请:手把手教你获取API Key

本文提供了一份高效的阿里云通义千问大模型API Key获取实战指南。通过清晰的步骤,帮助开发者在五分钟内完成从账号准备、精准导航控制台到创建并验证API Key的全过程,并强调了密钥安全管理和基础调用测试的重要性,助力快速集成AI能力。

ol789012345的博客 1360

【数据集】CMIP6气候模式数据下载

简介CMIP6及其气候模式数据下载

WW、forever的博客 9360

另外一套中英文颜色代码

颜色英文代码形像颜色HEX格式RGB格式 LightPink浅粉红#FFB6C1 255,182,193 Pink粉红#FFC0CB 255,192,203 Crimson猩红#DC143C 220,20,60 LavenderBlush脸红的淡紫色#FFF0F5 255,2

6005

Arduino与Proteus仿真实例-LCD2004-I2C(PCF8574)驱动仿真

LCD2004-I2C(PCF8574)驱动仿真 PCF8574/74A 通过两线双向 I2C 总线(串行时钟 (SCL)、串行数据 (SDA))提供通用远程 I/O 扩展。 LCD2004,即2004字符型液晶显示器,是一种点阵模块,用于显示字母、数字、字符等。 它由 5x8 个点阵位置组成; 每个位置可以显示一个字符。 两个字符之间有一个点间距,行之间有一个空格,从而将字符和行分开。 模型 2004 表示它显示 4 行,每行 20 个字符。 在前面的实例中对PCF8574和LCD2004的已经做了详细介

视觉与物联智能 1165

java基础一

java基础一

weixin_61494821的博客 994

2026年03月CCF-GESP编程能力等级认证Scratch图形化编程一级真题解析

本文收录于《,订阅后可阅读专栏内所有文章。

人生就是一个不断学习的过程 243

软考高级-系统架构设计师 知识点整理 (一篇就够了 建议收藏)

软考高级-系统架构设计师知识点整理---十万字总结,助你通过高级

片言可决讼,半纸能缚龙 7357

《JAVA程序设计基础》实验一

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34307464的博客 316

基于STM32单片机的环境监测系统设计与实现

综上所述,基于STM32单片机的环境监测系统具有良好的实时性、准确性和稳定性,能够满足环境监测的需求。本系统的研究意义在于,首先,它能够为用户提供准确的室内空气质量信息,帮助用户了解室内环境的质量状况,从而采取相应的措施来改善室内环境。本文设计并实现了一种基于STM32单片机的环境监测系统,该系统能够实时监测并显示室内环境的温湿度、甲醛浓度以及二氧化碳浓度,为用户提供准确的空气质量信息。实验过程中,我们模拟了不同的环境条件,包括温湿度变化、甲醛和二氧化碳浓度的波动等,以测试系统的实时性、准确性和稳定性。

3254968421的博客 2万+

阶段一:Java基础语法

【代码】阶段一:Java基础语法。

m0_44973790的博客 771

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

实验一 Java编程基础

程序运行后要求用户分别输入两个矩阵的内容,然后调用Matrix()方法进行两个矩阵相乘。程序运行后要求用户输入梯形的上边长度(号的数量),然后输入梯形的层数。梯形的每一层比上一层左右边各多一个号,程序输出梯形的形状。程序运行后要求用户输入存款本金、年利率和存款年限,最后程序计算并输出相应年限后存款的总额。为了完成本关任务,你需要掌握:1.Java基础编程,2.数据输入输出。本关任务:编写一个简单Java程序,计算银行年存款的本息。该方法完成存款到期总额的计算。本关任务:编写程序完成矩阵的乘法运算。

2301_80249313的博客 514

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

一、Java基础

在运行时动态的获取、检查、和操作程序的元数据和对象的能力,这种动态获取信息以及动态调用对象方法的功能称为反射。我们可以通过反射:获取类的信息,动态创建对象,动态调用方法,访问和修改字段,实现通用性代码,实现动态代理。可以通过反射获取类的名称、父类、接口、方法、字段等元数据信息。可以在运行时动态地创建类的实例,而不需要在编译时硬编码类名。可以在运行时动态地调用对象的方法,包括私有方法,而不需要提前知道方法名。可以在运行时动态地访问和修改对象的字段,包括私有字段。

m0_72214739的博客 1398

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Java必备基础一——一文读懂的Java基础中的基础

Java语言基本格式 Java语言基本元素 Java书写规范

Pandafz的博客 2101

JAVA面试篇(一)一JAVA基础

1、抽象类和接口的区别?2、类初始化顺序?3、类初始化顺序?

star_falling的博客 1567

Java基础一

不想每次都从当前目录中找该命令,有两种方法 直接在path中添加这个地址 C:\Program Files\Java\jdk1.8.0_211\bin 先创建一个自定义的环境变量 名为JAVA_HOME java的家目录 值为C:\Program Files\Java\jdk1.8.0_211 在path中添加 %JAVA_HOME%\bin %变量名% 表示取值的意思,取值后拼接上 \bin --> C:\Program Files\Java\jdk1.8.0_211\bin 如果以后需要.

qq_44948213的博客 647

Java 基础语法(一)【详细教程】

Java 作为一门被广泛应用于软件开发各个领域的高级编程语言,以其强大的功能、良好的跨平台性和卓越的安全性,在全球范围内拥有庞大的开发者社区和众多的应用场景。而其基础语法,就如同坚实的基石,为构建复杂且功能强大的 Java 程序奠定了不可或缺的基础。

野生派蒙的博客 1569

【一、测试基础】Java基础语法

Java 的用法及注意事项有很多,今天的目标是了解Java基础语法,且能够输出"hello world"

玩转AI,找山茶 1110

【面试】一、Java 基础

这份面试题包含了 19 个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 等。 一、Java 基础 面向对象的特征 封装、继承 、抽象、多态 1...

chen649053473的博客 262

一、Java 基础

/此处可以随便写标识符号,T是type的简称//var的类型由T指定,即由外部指定//返回值的类型由外部决定returnvar;//设置的类型也由外部决定//里面的var类型为String类型//设置字符串//取得字符串的长度}}//在接口上定义泛型//定义抽象方法,抽象方法的返回值就是泛型类型}classInfoImplimplementsInfo{//定义泛型接口的子类//定义属性¶}......

林中静月下仙的博客 534
上一篇: 过滤器实现评论内容的限制,玫感字和字数,分别用两个Filter实现
下一篇: java面试题(二)
青蓝色的伤痕
博客等级 码龄10年 19粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值