Java之路理解

简介: 我们学习的程序基本第一个都是hello,word,有些小伙伴调侃, 本人精通多种语言hello,word,当你创造出第一个程序,打印出第 一句hello,word,那么便是一个程序人生的开始。 说到开始,其实我的编程语言学习之路很坎坷,我其实最初学习 的并不是Java语言,而是c语言,当时学习觉得好难呀,学不会,来来 回回放弃了好多次,最后学习了Java,开启软件开发后端之路,Java 在我学的那些语言中还是比较好学的,个人理解。第一个语言 我学习Java软件开发是从最基础的学习的,从网上找资料,买书 本,白嫖一

前言

起因

       有很多小伙伴想学习程序,觉得写代码,做到了别人做不到的

   事情,走在了人群的上流,是一件很酷的事情,这里我想说的是:

   程序创造人生,创造未来。我为什么喜欢写代码是因为我喜欢那种

   创造的感觉,创造是一个从无到有的过程。

个人理解

       我们学习的程序基本第一个都是hello,word,有些小伙伴调侃,

   本人精通多种语言hello,word,当你创造出第一个程序,打印出第

   一句hello,word,那么便是一个程序人生的开始。

       说到开始,其实我的编程语言学习之路很坎坷,我其实最初学习

   的并不是Java语言,而是c语言,当时学习觉得好难呀,学不会,来来

   回回放弃了好多次,最后学习了Java,开启软件开发后端之路,Java

   在我学的那些语言中还是比较好学的,个人理解。

第一个语言

       我学习Java软件开发是从最基础的学习的,从网上找资料,买书

   本,白嫖一些电子书,也许有人会问要是遇到问题怎么办,我遇到问

   题都是通过一些学习网站,比如:阿里云、CSDN、稀土掘金、极客时

   间以及InfoQ写作社区等等。这些网站都是比较出名的,还可以请教

   一些大佬,一般都会为你讲解的。

       我学习Java的顺序是:Java历史、编译原理、环境搭建、基本数

   据类型、Java常量与变量、类型转化、运算符号、语法结构以及一些

   关键字、方法的调用、数组的使用、面向对象、构造方法、方法设计

   方法重载、继承、封装、修饰符、类与类的关系、集合、IO流、线程

   注解等等。在编程之路上这些基础知识是必不可少的。

   下面我分享以下我对一些个别知识点的结构分析与理解。

Swing初识

知识梳理

1.语法结构

 数据类型  变量常量  流程控制  数组使用

2.面向对象--思想

 类和对象  类中成员

 类和类之间的关系  设计模式

 类中特征  权限 特征 抽象类 接口 多态

3.Java工具类

 包装类 日期 数学

 字符串 集合相关 异常

4.I/O

 文件  文件流  递归

5.线程相关

 线程 进程 程序  线程几种不同状态  如何切换

 线程安全问题  锁

6.反射注解

 Class Field Method Constructor Package

 @interface 自定义注解 元注解 通过反射解析注解

7.网络相关

考试系统流程分析

1.登录功能     用户名和密码存在哪里?     文件

2.考试功能     考试题目和答案存在哪?     文件

3.展示功能     GUI Graphical   User  Interface图形用户接口

 GUI    

 Java集合  String

 I/O

 文件

 C------->桌面应用程序

 C/S----> Client   Server     客户端/服务器 QQ

 B/S----> Browser  Server  浏览器/服务器  淘宝

GUI

Graphical   User   Interface

图形用户接口

就是采用图形的方式,进行操作页面的展示

AWT (Abstract Window Toolkit)

Swing 摆动,悬挂的意思

 AWT Swing

窗体 Frame JFrame

面板 Panel JPanel

组件 Button JButton

 Label JLabel

 TextField JTextField

  JPasswordField

  JCheckBox复选框

  JRadioButton单选按钮

  JMenuBar   JMenu  JMenuItem

 TextArea JTextArea文本域

*事件 ActionListener  动作/响应事件

 KeyListener       键盘事件

 MouseListener 鼠标事件

注解分析

注解

   Annotation(注释  注解)

   注释

   单行注释   //

   多行注释   /*      */

   文档注释   /**    */

   注解

   1.注解的写法

     @XXX [(一些信息)]

   2.注解放置在哪里

     类的上面   属性上面  方法上面  构造方法上面  参数前面

   3.注解的作用

1.用来充当注释的作用(仅仅是一个文字的说明)   @Deprecated

2.用来做代码的检测(验证) @Override

*3.可以携带一些信息(内容) 文件.properties  .xml   注解

   4.Java中有一些人家写好的注解供我们使用

@Deprecated     用来说明方法是废弃的

@Override          用来做代码检测   检测此方法是否是一个重写

@SuppressWarnings(信息) String[]    {""}  

 如果数组内的元素只有一个长度  可以省略{}

 unused 变量定义后未被使用

 serial 类实现了序列化接口  不添加序列化ID号

 rawtypes 集合没有定义泛型

 deprecation   方法以废弃    

 *unchecked   出现了泛型的问题  可以不检测

 all 包含了以上所有(不推荐)

   5.注解中可以携带信息  可以不携带

信息不能随意写   信息的类型只能是如下的类型

1.基本数据类型

2.String类型

3.枚举类型enum

4.注解类型@

5.数组类型[]   数组的内部需要是如上的四种类型

   6.如何自己描述一个注解类型

1.通过@interface 定义一个新的注解类型

2.发现写法与接口非常相似(可以利用接口的特点来记忆注解)

 可以描述public static final的属性  比较少见

 可以描述public abstract的方法  方法要求返回值必须有  返回值类型是如上那些

3.我们自己定义的注解如果想要拿来使用

 光定义还不够  还需要做很多细致的说明(需要利用Java提供好的注解来说明)

 元注解(也是注解 不是拿来使用的 是用来说明注解)

 @Target 描述当前的这个注解可以放置在哪里写的

 @Retention  描述当前的这个注解存在什么作用域中的

  源代码文件--->编译--->字节码文件--->加载--->内存执行

  SOURCE        CLASS          RUNTIME

 @Inherited   描述当前这个注解是否能被子类对象继承

 @Document   描述这个注解是否能被文档所记录

4.自己使用自己描述的注解

 问题1.  在注解里面描述了一个方法   方法没有参数   方法是有返回值String[]

  使用注解的时候   让我们传递参数

  理解为  注解的方法做事   将我们传递给他的参数  搬运走了  给了别人

 问题2.  使用别人写好的注解不用写方法名  我们自己定义的方法必须写名字

  如果我们自己定义的注解  只有一个方法  方法名字叫value

  在使用的时候就可以省略方法名  

  如果传递的信息是一个数组   数组内只有一个元素  可以省略{}

  如果方法是两个以上  每一个方法必须写名字

如何解析注解内携带的信息(反射机制)

   注解应用场景

Properties类的使用

 java.util

 继承HashTable

 使用方式像是map集合     value = getProperty(key)方法

 读取的信息是文件

 文件的后缀名.properties

 文件里面key=value

1.注解写法

 @XXXX (信息)

2.注解放置在哪里写

 类  方法  属性  构造  变量  参数(前面)

3.Java中定义好的注解

 @Deprecated 废弃的

 @Override 检测方法是否是重写

 @SuppressWarnings   去掉程序中的警告(尽量不要用  尽量通过编写代码去掉警告)

  unused   serial   rawtypes    deprecation   unchecked   all

4.如何自己定义注解

 描述一个自己的类    @interface

 类的上面通过元注解来描述

  @Target

  @Retention

  @Inherited

 想要携带一些信息   自定义注解类型  添加方法

  方法要求必须有返回值  返回值类型   基本  String  枚举  注解  数组

  方法的作用将我们传递的信息  搬走了  交给别人

5.注解的作用

 充当注释  仅仅是一个文字说明

 代码检测  @Override

 *携带信息

6.如何访问到注解对象

   如何获取里面的信息(需要反射机制)

7.注解在开发中应用的场景

  • 以上多数是关于Java注解(初始+元注解+自定义)知识点分析。
目录
相关文章
|
7月前
|
XML Java API
你必须掌握的 21 个 Java 核心技术!,千峰Java
你必须掌握的 21 个 Java 核心技术!,千峰Java
|
7月前
|
Java 数据挖掘
java实践
【4月更文挑战第9天】java实践
37 1
|
7月前
|
开发框架 安全 Java
Java的发展历程和特点
Java的发展历程和特点
|
7月前
|
Java 关系型数据库 MySQL
Java技术探索中的实践与思考
Java的跨平台、自动内存管理和丰富的类库使其备受欢迎。通过构建一个使用Spring Boot、MySQL和Thymeleaf的简易博客系统,展示了Java技术栈的应用。实践中,强调了技术选型、面向对象设计、安全性、性能优化和持续学习的重要性。
阿里P8大牛推荐Java程序员必看的 13 本 Java 书籍
关乎于程序员,除了做项目来提高自身的技术,还有一种提升自己的专业技能就是:多!看!书! 毕竟,书是学习的海洋呢!So,Java程序员你们准备好了吗?双手奉上Java程序员必读之热门书单。 在下面这 13 本书籍中小编还是要建议大家可以先去关注英文原版,毕竟翻译的书籍中都有一定的语法错误。
|
7月前
|
Java 编译器 数据库连接
Java学习—初入Java
Java学习—初入Java
|
分布式计算 Java 开发工具
JAVA技术入门
Java技术入门 Java语言是由Sun公司于1995年推出的一种全新的、跨平台、适合于分布式计算环境的纯面向对象编程语言。
135 0
JAVA技术入门
|
存储 SQL JavaScript
[Java技术分享]
Java技术er集合啦!大家可分享关于Java技术知识,包括但不限于微服务,分布式等前沿技术,快来沉淀自己的技术,一起写出未来吧! 你可以从以下几个方面着手(不强制),或者根据自己对话题主题的理解进行创作,参考如下:
593 0
[Java技术分享]
|
SQL JavaScript 算法
踉踉跄跄的Java之路
踉踉跄跄的Java之路
踉踉跄跄的Java之路
|
开发框架 Oracle 安全
今天是 Java 诞生日,Java 27 岁了!
Java语言最早被称为Oak,它是为了实现嵌入式的消费类电子产品应用而产生的,它的作者是James Gosling.Ed Frank, Patrick Naughton, Jonathan Payne, Chris Warth在随后的几年时间中为Java语言加入了大量的特性,并把Java语言的目标做了一个重新的定位,定位于适合Internet的语言。 Java语言是一种多用途的语言、并发的语言、以类为基础,面向对象的语言。它的设计尽可能的做到和操作系统是无关的,也就是Java所宣传的那句话:"一次编写,到处运行。
392 0
今天是 Java 诞生日,Java 27 岁了!