草庐IT

java学习第二天

xiaobaijava001 2023-04-17 原文

Day02

第二天主要了解的内容为软件研发的流程,如何使用dos命令框去编译和运行java程序,以及编写第一个java程序(HelloWorld)
了解编码格式,Java中的代码注释,java如何输出内容,java中的数据类型以及数据类型的转换
标识符和关键字以及保留字

软件研发流程

需求调研
需求整理
产品原型图绘制
						产品经理
项目启动会
UI设计
						UI设计师
研发
	前端
		Android应用开发
		Android系统开发
		IOS应用开发
		网页(大前端开发工程师,html,css,js...)
		微信小程序
		游戏开发
		...
	后台
		Java开发(JavaSE,JavaEE,html,css,js,sql...)
		PHP开发
		Python
		.net
		...
测试
	测试开发工程师
上线
	
维护
	运维开发工程师

软件公司的性质

自研
	阿里巴巴(淘宝,支付宝),腾讯(QQ,微信),京东(京东),华为(鸿蒙),字节跳动(抖音,今日头条..),米哈游(原神)
	将软件作为公司的生命核心
	
外包
	东软,中软,润和,软通...
	将软件作为商品进行买卖

编写第一个Java程序HelloWorld

步骤
	1:创建一个文本文件,起名为HelloWorld
	2,打开步骤1创建的文本文件,编写一下代码
		class HelloWorld{
			public static void main(String[] args){
				System.out.println("小白友");
			}
		}
		注意:
			1,所有的标点符号,都是在英文状态下输入的
			2,注意空格
			3,大小写要正确
	3,将步骤1创建的文件的后缀改为java
	4,打开dos命令框,并进入到java文件所在的文件夹
	5,将java文件编译为class文件(字节码文件)
		javac 步骤1创建的文件名称(要加后缀名)
	6,运行字节码文件
		java 步骤5生成的class文件的文件名称(不要加后缀名)
	
注意:
	1,文件名不要使用特殊字符,包括空格,但是可以使用_,$
	2,文件名不要使用数字开头,如111.java
	3,建议不要使用中文作为文件名
	4,class之后,大括号之前称为类名
		类名不要使用特殊字符,不要使用数字开头,不建议使用中文
		类名建议使用大驼峰命名法进行命名
			如果一个单词作为类名,该单词首字母大写
			如果多个单词作为类名,每个单词首字母大写
			做到见名知意
		类名可以自定义
	5,文件名可以与普通类名不一致
	6,生成的class文件的名称其实是类名
	7,一个java文件中,可以有多个普通类.每个类都会生成一个对应的class文件
	8,同一个文件夹中类名不能重复
	9,如果class前有public,那么这个类就是公共类.公共类的类名必须与文件名一致.一个java文件中只有一个公共类
	10,建议一个java文件中只写一个类
	

编码格式

因为最开始计算机只有0或1
多个0或1可以组成一个数字 
	0000 0001(二进制)		1
	0000 0010(二进制)		2
	...					  

研发的人指定:
	65		A
	66		B
	...
	90		Z
	97		a
	98		b
	...
	122		z
	...
支持中文的编码格式
	GBK
		假设:中		1378
	UTF-8
		假设:犇		1378

注释

使用场景

1,在代码中加入文字说明,方便后期对代码的阅读,但是不能影响代码的正常运行,此时使用注释(解释说明)
2,在优化维护代码时,不要急着将老代码删除,而是将其注释.直到新代码可以正常替换老代码时在进行删除(注释无用代码)

java代码注释分类

单行注释
	语法://注释的内容
多行注释
	语法:
		/*
		注释的内容1
		注释的内容2
		...
		*/
文档注释
	语法:
		/**
		注释的内容1
		注释的内容2
		...
		*/
多行注释一般在方法中使用
文档注释一般在类或方法上使用

输出

概念

给控制台显示内容

语法

打印不换行
	System.out.print();
	注意:
		小括号中必须有打印的内容,不然无法通过编译
		打印完内容,不换行
打印换行
	System.out.println();
	注意:
		小括号中可以没有打印的内容
		打印完内容,换行

数据类型

基本数据类型
	整数:
		如:0,-1,12,1001,-123
		byte		1字节		8位		-2^7 ~ 2^7-1
		short		2字节		16位		-2^15~2^15-1
		int			4字节		32位		-2^31~2^31-1		默认
		long		8字节		64位		-2^63~2^63-1		给值后加l或L
		
	浮点型(小数):
		如:1.1,3.14,...
		float		4字节		32位		-2^31~2^31-1		给值后加F或f
		double		8字节		64位		-2^63~2^63-1		默认
		
	布尔
		boolean
				true:真
				false:假
	字符
		char		2字节		16位
			'小'
			'白'
			'友'

	
引用数据类型
	所有类的对象,都属于引用数据类型,引用数据类型有无数种
	字符串:
		""
		注意:字符串的值必须使用双引号包裹

数据类型转换

小类型转大类型
	自动转换
	
大类型转小类型
	强制转换
	语法:(小类型) 值
	将数字97转换为char对应的字符:(char)97

练习:
	获取中文中'犇'对应的数字
    获取自己姓名对应的数字的和
注意:
	字符与字符相加减,结果为int
	boolean(布尔)不参与转换
	字符串与任何类型拼接,都是字符串

标识符,关键字,保留字

标识符

名称:类名,变量名,接口名,枚举名,注解名,对象名,包名,方法名,属性名...
所有的标识符都是自定义的
命名规则(潜规则):
	类名,接口名,枚举名,注解名:大驼峰
		大驼峰:每个单词是的首字母大写
	变量名,对象名,方法名
		小驼峰:
			如果只有一个单词作为名称,那么该单词首字母小写
			如果有多个单词作为名称,第一个单词首字母小写,其他单词首字母大写
	包名
		全小写
	常量名
		全大写

注意:
	1,做到见名知意
	2,不要使用数字开头
	3,不要使用特殊字符,建议不要使用中文
	4,特殊字符_与$可以使用
	5,包名的命名潜规则:
		com.公司名称缩写.包名
		如:
			com.blog.demo
		com.项目名称.包名
		如:
			com.csdn.shiti
	6,全大写时使用单词之间使用下划线连接
	7,不能使用关键字或保留字进行命名

关键字

概念:java中有特殊含义的单词
目前所学的关键字有:
	byte,short,int,long
	float,double
	boolean
	char
	class
	public
	static
	void
	if
	else
	switch
	case
	break
	for
	do
	while
	try
	catch
	final
	extends
	implements
	interface
	@interface
	throw
	throws
	this
	super
	enum
	new
	...

保留字

概念:java中目前还没有特殊含义的关键字

总结

1,了解开发流程
2,了解研发公司性质
3,第一个程序
	javac
	java
4,注释(重点)
5,输出(重点)
6,数据类型(重点)
7,命名(重点),关键字,保留字

有关java学习第二天的更多相关文章

  1. java - 等价于 Java 中的 Ruby Hash - 2

    我真的很习惯使用Ruby编写以下代码:my_hash={}my_hash['test']=1Java中对应的数据结构是什么? 最佳答案 HashMapmap=newHashMap();map.put("test",1);我假设? 关于java-等价于Java中的RubyHash,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22737685/

  2. java - 从 JRuby 调用 Java 类的问题 - 2

    我正在尝试使用boilerpipe来自JRuby。我看过guide从JRuby调用Java,并成功地将它与另一个Java包一起使用,但无法弄清楚为什么同样的东西不能用于boilerpipe。我正在尝试基本上从JRuby中执行与此Java等效的操作:URLurl=newURL("http://www.example.com/some-location/index.html");Stringtext=ArticleExtractor.INSTANCE.getText(url);在JRuby中试过这个:require'java'url=java.net.URL.new("http://www

  3. java - 我的模型类或其他类中应该有逻辑吗 - 2

    我只想对我一直在思考的这个问题有其他意见,例如我有classuser_controller和classuserclassUserattr_accessor:name,:usernameendclassUserController//dosomethingaboutanythingaboutusersend问题是我的User类中是否应该有逻辑user=User.newuser.do_something(user1)oritshouldbeuser_controller=UserController.newuser_controller.do_something(user1,user2)我

  4. java - 什么相当于 ruby​​ 的 rack 或 python 的 Java wsgi? - 2

    什么是ruby​​的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht

  5. Observability:从零开始创建 Java 微服务并监控它 (二) - 2

    这篇文章是继上一篇文章“Observability:从零开始创建Java微服务并监控它(一)”的续篇。在上一篇文章中,我们讲述了如何创建一个Javaweb应用,并使用Filebeat来收集应用所生成的日志。在今天的文章中,我来详述如何收集应用的指标,使用APM来监控应用并监督web服务的在线情况。源码可以在地址 https://github.com/liu-xiao-guo/java_observability 进行下载。摄入指标指标被视为可以随时更改的时间点值。当前请求的数量可以改变任何毫秒。你可能有1000个请求的峰值,然后一切都回到一个请求。这也意味着这些指标可能不准确,你还想提取最小/

  6. 【Java 面试合集】HashMap中为什么引入红黑树,而不是AVL树呢 - 2

    HashMap中为什么引入红黑树,而不是AVL树呢1.概述开始学习这个知识点之前我们需要知道,在JDK1.8以及之前,针对HashMap有什么不同。JDK1.7的时候,HashMap的底层实现是数组+链表JDK1.8的时候,HashMap的底层实现是数组+链表+红黑树我们要思考一个问题,为什么要从链表转为红黑树呢。首先先让我们了解下链表有什么不好???2.链表上述的截图其实就是链表的结构,我们来看下链表的增删改查的时间复杂度增:因为链表不是线性结构,所以每次添加的时候,只需要移动一个节点,所以可以理解为复杂度是N(1)删:算法时间复杂度跟增保持一致查:既然是非线性结构,所以查询某一个节点的时候

  7. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

  8. CAN协议的学习与理解 - 2

    最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总

  9. 深度学习部署:Windows安装pycocotools报错解决方法 - 2

    深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal

  10. 【Java入门】使用Java实现文件夹的遍历 - 2

    遍历文件夹我们通常是使用递归进行操作,这种方式比较简单,也比较容易理解。本文为大家介绍另一种不使用递归的方式,由于没有使用递归,只用到了循环和集合,所以效率更高一些!一、使用递归遍历文件夹整体思路1、使用File封装初始目录,2、打印这个目录3、获取这个目录下所有的子文件和子目录的数组。4、遍历这个数组,取出每个File对象4-1、如果File是否是一个文件,打印4-2、否则就是一个目录,递归调用代码实现publicclassSearchFile{publicstaticvoidmain(String[]args){//初始目录Filedir=newFile("d:/Dev");Datebeg

随机推荐