java基础巩固训练营【第一轮】(一)项目环境和规范

华为软件开发训练营课程资料大全 优秀代码是指能够高效、清晰、可维护地完成既定功能的代码。它通常是简洁的,没有多余的复杂性,易于其他开发者理解和使用。定义优秀代码需要考虑以下几个标准:可读性(Readability):代码应该易于理解,包括命名规范、适当的注释和清晰的逻辑。可维护性(Maintainability):优秀的代码应便于维护和扩展,意味着代码结构良好,逻辑清晰。可重用性(Reusability):优秀代码应该支持模块化,方便代码的复用。性能(Performance) 阅读详情

本次训练营以动手练习为主,因此关于项目的目录结构和代码的规范需要给大家一些建议。这些项目和代码的规范,是一般公司经常用到的,因此希望大家能够遵守,注意:本次学习自愿的,没有任何强迫也没有任何考试,大家可以不遵守这些规范,但是我建议大家不要这么做。

 

关于项目规范有以下一些事情大家注意

 

如何下载项目

当初如何来组织大家进行代码练习我思考了很久,首先准备采用的方案是采用传统的下载模式,即我给出一个框架然后大家下载。但是这种模式不方面我们进行代码交流。于是我决定冒险一下采用目前一般公司采用的版本库法。但是问题由来了,到底用那种版本库呢,经过思考和调查分析后我决定采用SVN,因为这是目前很多公司正在或者准备采用的。还有一个原因是我面试过的很多人中(毕业生)都不知道版本库是何物,因此我决定借此机会让大家提前了解一下版本库。

 

经过搜索和比较我在网上找到了一个国外的SVN服务器,其中一个重要的原因是他是免费的。但是我又有一个多余的担心,担心他被“和谐”了,不过还好至少目前为止都可以正常使用。

 

我想在之前的热身阶段已经通过视频,文章等多种手段跟大家说明了如何下载代码,但是这里我还是把相关链接贴在下面供大家参考

 

2009年免费暑期JAVA基础巩固训练营热身——代码练习环境测试

 关于eclipse中svn插件的配置方式

2009年免费暑期JAVA基础巩固训练营热身——环境搭建视频

 

 

项目的目录结构(包括各个部分的代码,给出表格)

 

练习环境目录结构

 

 

上图是练习环境的代码目录结构,我是按照一个完整的J2EE项目的结构来搭建这个环境的,虽然有些目录我们暂时没有用到,对目录中的各个文件做一说明

 

目录和文件名作用
src源文件存放目录,所有大家的练习文件都存放在该目录中
src_sample样例代码存放目录,所有大家的样例代码都存放在该目录中
test测试用例代码存放目录
config配置文件目录
source资源文件目录
bin系统发布目录
WebRootweb项目文件目录,包括jsp,css,javascript等
build.propertiesant脚本配置文件
build.xmlant脚本文件
 

 

我的代码放在什么地方

为了保证将来能够正确的找到大家的代码,我们对练习的代码的包路径和包命名方式做了严格的规定,首先大家需要在一些包路径中创建自己的包

 

src/com/j2ee110/csdn/student

 

每个人根据自己的中文名在这个下面创建一个文件夹,文件夹的命名规则如下:

如果一个人的名字叫“李小华”那么他创建的文件名为 lixh,文件夹创建完毕后路径如下:

 

src/com/j2ee110/csdn/student/lixh

 

 虽然我们没有什么强制性的规定但是我还是建议大家按照规范来命名

 

我的代码如何组织

本次训练营的过程大家在上一篇中已经看到了,我们分为四轮,每轮分别有分为十四个部分,其中涉及到代码的有12个部分,因此这我需要为这个十三个部分分别起一个包名,对应每张的代码都存放在相应的包中,各章节的报名如下表所示:

 

 

章节编号章节名称包名
2java基础javabase
3编写、编译、运行javacr
5基本数据类型basetype
6面向对象的javaoob
7数据结构datastruc
8文件读写filerw
9用java通信sockets
10多线程mutilthread
11直面错误--java异常 exception
12我们一起来找茬killexception
13java桌面应用desktop
14大家一起做项目project

 

接下来大家可能有个问题:这些包放在什么路径下面呢? 上面我规定了每个人都有一个属于自己的文件夹,对了,这些包就放在这个文件夹下面,下面是我的工作目录的截图,供大家参考

代码路径 

 

 

SVN如何使用

SVN的具体使用方法我们在视频中已经讲的比较清楚啦,这里需要强调的是,因为带宽的限制,大家平时只需对 src  和

src_sample 这两目录进行update和commit操作,如果需要对其他目录进行相关操作我们会及时提出。

 

 

 

如果学习中遇到困境怎么办

关于这点我觉得大家可以学习鲁迅先生学习英语的办法,遇到的一些比较晦涩难懂的,先记录下来,跳过,以后慢慢的就懂了。这里我给大家分享一下我个人的感受,在学习IT知识的时候,许多时候遇到不懂的东西的时候,“先记住而后消化”,先明白怎么用(在工作中先把问题解决,比如大多数项目是为了解决问题而不是研究问题),然后慢慢搞清楚其原理。

 

 

课后练习:

本章的课后练习是大家把项目从svn服务器上面下载下来,然后把项目的目录都创建好,为后面的开发做好准备。

 

暑期java基础巩固训练营开始
java基础巩固训练营 简介
java基础巩固训练营【第一轮】(一)项目环境和规范
java基础巩固训练营【第一轮】(二)JAVA基础
java基础巩固训练营【第一轮】(三) 编写、编译、运行 
java基础巩固训练营【第一轮】(四) 利器(IDE工具)
java基础巩固训练营【第一轮】(五) 基本数据类型
java基础巩固训练营【第一轮】(六) 面向对象的JAVA
java基础巩固训练营【第一轮】(七) 数据结构中的java
java基础巩固训练营【第一轮】(八) 文件读写
java基础巩固训练营【第一轮】(九) 用java通信
java基础巩固训练营【第一轮】(十) 多线程
java基础巩固训练营【第一轮】(十一) 直面错误--java异常
java基础巩固训练营【第一轮】(十二) 我们一起来找茬
ava基础巩固训练营【第一轮】(十三) java桌面应用
java基础巩固训练营【第一轮】(十四) 大家一起做项目

 

 如果您对我的文章感兴趣的话,请点击这里加我为好友,让我们一起进步
 

http://student.youkuaiyun.com/invite.php?u=106708&c=2383a3846076c876

java新手8个小项目 特别适合java新手巩固java基础的项目,总共有8个项目的全部代码,都可以直接运行,代码有注释。 立即下载

相关推荐

从查表法到实时计算:SimpleFOC库中正弦函数优化的技术演进

本文深入探讨了SimpleFOC库v2.0.1版本中正弦函数优化技术的演进,从传统查表法到实时计算的创新实践。通过定点数优化、对称性利用和分段线性插值等关键技术,实现了在嵌入式电机控制中的高效三角函数计算,显著提升性能和资源利用率。

weixin_28273593的博客 452

巩固JavaSE基础--IDEA完成实战项目

PS:学习完JavaSE基础后,需要有一个项目来测试自己的学习成果,并加以巩固。所以在这里,就让我们来学习下“一本糊涂账”项目吧。(此项目来源于Java自学网站) 项目完成效果图一览 起始--新建项目   新建JavaEEApplication项目,并命名为“yc_hutubill”。并添加lib、classes、img文件夹。效果如下图:   并将classes文...

weixin_30342827的博客 941

别再死记硬背了!用MaxDEA软件实操SBM、DDF、NDDF模型,手把手教你测算绿色全要素生产率

本文深度解析如何使用MaxDEA软件实操SBM、DDF、NDDF模型,手把手教你测算绿色全要素生产率(GTFP)。通过详细的模型选择对比、数据准备策略和MaxDEA操作流程,帮助研究者科学构建指标体系并准确解读结果,提升环境管理研究的实证分析能力。

weixin_28731231的博客 314

java项目_34 个 Java 练手项目合集,从入门到进阶

人类一生中,99% 的技能都是靠实践学来的,编程更是如此。在这一点上,编程和打篮球很像:你得亲自上场去打,才能学会篮球;同样,亲手敲下代码,才能真正学会「编程」。太多人看完一本书、几个 G 的视频后,到真正写程序时却无从下手,就是因为代码写的太少了。下面是我们整理的一条 Java 学习路径,包含 :Java 基础 -->> Web 基础 -->> Java Web 框架 -...

weixin_39751769的博客 1726

Rstudio安装org.Hs.eg.db

自己也是个小白,初次安装org.Hs.eg.db碰到好多问题,步骤总结如下: 第一,instal.packages()安装,不行则换 BiocManager::install() 第二,如BiocManager不成,说明不是最新版本,可按提示安装最新版 BiocManager::install(version = '3.13') #由于R版本较新,按照提示中的相关信息,安装最新版本的 第三,再次安装 BiocManager::install("org.Hs.eg.db") 第四,之后每个人.

ZH_DDong的博客 2万+

别再到处找模型了!手把手教你用Xinference+Docker部署本地私有大模型(Llama2/Qwen实战)

本文详细介绍了如何使用Xinference和Docker部署本地私有化大模型(如Llama2/Qwen),涵盖硬件配置、模型管理、Docker部署及性能优化等关键步骤。通过实战案例,帮助开发者快速构建企业级AI推理服务,确保数据安全与高效运行。

weixin_28683065的博客 232

31天孤尽代码规范与效能提升训练营

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

weixin_40524077的博客 890

南大计算机2024保研笔试:编译原理等5门专业课考点分布与408复习避坑指南

本文详细解析了南京大学计算机2024保研笔试的考点分布与复习策略,重点突出编译原理(占比28%-32%)和离散数学的特色考核。提供跨课程复习方法、真题题型分析及高效备考建议,帮助考生突破传统408框架,应对南大独特的命题风格。

weixin_29304985的博客 345

Java 基础巩固

目录 类 集合 Java I/O 泛型 并发 反射 注解 类加载 动态代理 正则表达式 函数式编程 类 接口 接口声明了一组能力。一个接口可能对应多个实现类。接口方法不需要加修饰符,加与不加相当于都是public abstract。 接口降低了耦合,提高了灵活性。使用接口的代码依赖的是接口本身,而非实现接口的具体类型,程序可以根据情况替换接口的实现,而不影响接口使用者 在Java 8之前,接口中的方法都是抽象方法,都没有实现体,Java 8允许在接口中定义两类新方法:静态方法和默认方法,它们有实现体

qq_38454776的博客 804

uniapp [安卓苹果App端] - 实现集成微信一键登录及授权获取用户信息全流程源码,uniApp唤起微信客户端app实现微信授权头像昵称手机号(提供移动应用/开放平台/资质认证/签名/权限申请

uni-app,安卓Android,苹果ios,安卓app端,苹果App端,uniapp苹果安卓app,微信一键登录,uniapp项目App端实现微信登录,Uniapp实现微信授权登录,调起微信客户端授权用户信息,uniappapp端微信一键登录打开手机微信app,app端如何唤起用户本机微信应用并授权登陆,如何申请微信一键登录,uniapp实现APP微信登录流程,打开本地微信软件,接入微信登录,UniApp实现微信登录教程,获取头像昵称手机号用户数据,超详细实现微信登录功能,唤起没反应,授权失败,获取

🏆 前端领域优质创作者 1万+

FLUENT Meshing Watertight Geometry工作流入门 - 4 局部加密区域

总结一下本课程中学到的内容:我们了解了如何使用模型中特定兴趣区域的BOI和FOI局部尺寸控制来加密网格。然后,了解了如何使用Box类型的局部细化区域。最后,学习了Ansys Fluent Meshing Watertight Geometry Workflow的Offset Surface类型创建局部细化区域任务。

B_etter_Man的博客 6640

java基础巩固训练营【第一轮】(一)项目环境和规范 补充

当人走的太快的时候就要停下来,让灵魂能够跟上。 896

【XSRP软件无线电】基于软件无线电平台的FM数字接收系统设计(含有完整工程资料获取链接)

随着无线通信技术的快速发展,软件无线电(Software Defined Radio, SDR)作为一种新兴的无线通信技术,逐渐成为研究和应用的热点。传统的无线接收机通常依赖于专用硬件实现其功能,灵活性和可扩展性有限。相较之下,软件无线电利用软件来实现信号处理和调制解调功能,能够适应多种频率和调制方式,使无线通信系统更加灵活和高效。在FM(频率调制)广播中,数字接收技术的应用不仅提高了信号的抗干扰能力,还能提供更好的音质和更多的附加信息(如广播电台名称、节目内容等)。

嵌入式技术开发 1367

java基础巩固训练营【第一轮】(十三) java桌面应用

当人走的太快的时候就要停下来,让灵魂能够跟上。 2361

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

java基础巩固训练营【第一轮】(十四) 大家一起做项目

当人走的太快的时候就要停下来,让灵魂能够跟上。 3244

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

java基础巩固训练营 简介

当人走的太快的时候就要停下来,让灵魂能够跟上。 2737

深度学习工具包 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基础巩固训练营【第一轮】(十二) 我们一起来找茬

当人走的太快的时候就要停下来,让灵魂能够跟上。 1948

java基础巩固训练营【第一轮】(九) 用java通信

当人走的太快的时候就要停下来,让灵魂能够跟上。 1578

java基础巩固训练营【第一轮】(三) 编写、编译、运行

当人走的太快的时候就要停下来,让灵魂能够跟上。 1774

java基础巩固训练营【第一轮】(八) 文件读写

当人走的太快的时候就要停下来,让灵魂能够跟上。 1944

java基础巩固训练营【第一轮】(十) 多线程

当人走的太快的时候就要停下来,让灵魂能够跟上。 1728

java基础巩固训练营【第一轮】(二)JAVA基础

当人走的太快的时候就要停下来,让灵魂能够跟上。 2412

暑期java基础巩固训练营正式发布

当人走的太快的时候就要停下来,让灵魂能够跟上。 2887

Flutter for OpenHarmony 21天训练营 Day02 总结:Dart 语法入门与开发规范实践

大家好,我是 VON!今天是 **Flutter for OpenHarmony 21天训练营** 的第二天(Day02)。在完成昨日的环境搭建后,今天我们正式进入 **Dart 语言核心语法学习**,并同步明确训练营的 **技术文章写作规范**,为后续输出高质量原创内容打下基础。

欢迎大家一起讨论交流 899

java基础巩固训练营【第一轮】(十一) 直面错误--java异常

当人走的太快的时候就要停下来,让灵魂能够跟上。 1594

2021-10-26 套餐一实战训练营感想

首先很荣幸参加了优快云的第八期实战任务训练营,可以让我有机会和大佬们学习到一些技巧,并且给我这个小白一个明确的学习方向,全方面建构自己的知识框架。 其次,我来介绍一下我的情况。我是一名软件学院在读的大一学生,在学校中只接触过C语言。但是对JAVA有着浓厚的求学兴趣,但一直苦于找不到方法去全方面的了解到JAVA真正的学习方法。之前在B站会看一些老师的讲解,但优秀的老师很多,讲课大纲和使用的软件不统一会导致我出现选课困难以及都想听的问题。但今天的第一天实训,让我摆脱了这些困难...

L_Claudia_y的博客 183
上一篇: java基础巩固训练营 简介
下一篇: java基础巩固训练营【第一轮】(一)项目环境和规范 补充
模事在人
博客等级 码龄17年 1546粉丝 86原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值