javan小案例。

图形化。

上面的这个包有时候用的时候会乱码。

为什么

从服务器到客户端是需要网络传输的,所以浏览器只是做数据展示而已,这个客户端要么是浏览器,要么就是安装包,就是所谓的前端。

而Java一般都是做后端的语言,所以跟前端很少接触,于是乎就是这样了。

面向对象↑

JFRAME这是一个类。

宽高不是JFRAME的独有属性,而是共用的属性,和继承很像。

一层一层的继承关系。

顶级父类宽和高。

这个是用super关键字调用父类的CTVISIBLE。

判断布尔值如果是Ture的话就执行show方法,如果是first的话就执行hide方法

横杠就是已过时已过时的方法还是可以用的,直接show也可以调用方法。

只看这段代码的逻辑:是的,它仅仅是调用了父类中的 setVisible 方法。

这段代码是子类重写了 setVisible 方法,但方法体内只有 super.setVisible(b); 这一行代码------ super 代表父类,因此这行代码的作用就是直接调用父类对应的 setVisible 方法,没有添加任何额外的逻辑。

报错

这个代码的报错是由语法错误+静态上下文使用不当导致的,具体错误点及原因如下:

错误1:方法嵌套定义(语法错误)

Java中方法不能嵌套定义,但你在 main 方法(属于 App 类的静态方法)内部,直接写了 public LoginJFrame() 方法的定义------这违反了Java的语法规则,所以编译器会提示"意外的标记""无法解析方法"。

错误2:static上下文不能使用 this

main 方法是static(静态)方法,静态方法属于"类本身",而非"类的实例对象";而 this 关键字代表"当前类的实例对象",因此在static方法中使用 this (比如 this.setSize() 、 this.setVisible() )是非法的,会触发"无法从static上下文中引用'App.this'"的报错。

错误3:代码意图与写法不符

从注释"想开启登录界面就创建登录界面"能看出,你的实际意图是创建 LoginJFrame 类的实例对象,但错误地写成了"在main里定义方法",而非"创建对象"。

修正后的代码示例

假设 LoginJFrame 是一个已定义的窗口类(继承自 JFrame ),正确写法应该是:

java

public class App {

// 程序主入口(static方法)

public static void main(String[] args) {

// 创建LoginJFrame的实例对象(开启登录界面)

LoginJFrame loginFrame = new LoginJFrame();

// 设置登录界面大小

loginFrame.setSize(400, 300);

// 设置登录界面可见

loginFrame.setVisible(true);

}

}

补充说明

如果 LoginJFrame 类还未定义,需要先创建这个类(继承 JFrame ),例如:

java

import javax.swing.JFrame;

// 定义登录窗口类

public class LoginJFrame extends JFrame {

// 构造方法(初始化窗口)

public LoginJFrame() {

// 可在这里添加登录界面的组件(如输入框、按钮等)

}

}

Main中是不是只能创建对象之后再调用?而不能直接在里面定义方法,只能在类中定义。

对的。

这是无参构造括号为空就是无参,创建这个对象时就会直接调用方法体的数据。

可以直接用继承改写这些东西。

一直置顶的意思就是说点击了之后不会关闭。

ture布尔值判断,点击后不会被覆盖,如果里面是fLASE的话,程序就会直接不给你弹窗。

底下的3,每一个int数字都代表着一种关闭模式。

0123

2是多个界面开启只有你关闭最后一个界面的时候,它才会把所有的代码停掉。

所有设置2才会有效。

3只要关掉一个,虚拟机就会结束。

菜单。

接下来就是添加图片,首先是分割图片,花了一点时间分割好了

然后就是初始化图片添加管理容器。

不知道怎么创建对象就看源码。

坐标。

需要获取文件夹的名字才能创建对象。

相关推荐
星释2 小时前
Rust 练习册 :Luhn与校验算法
java·算法·rust
程序猿_极客2 小时前
【2025】16届蓝桥杯 Java 组全题详解(省赛真题 + 思路 + 代码)
java·开发语言·职场和发展·蓝桥杯
毕设源码-邱学长2 小时前
【开题答辩全过程】以 “万家电器”仓库管理系统的设计与实现为例,包含答辩的问题和答案
java·eclipse
摇滚侠2 小时前
Spring Boot3零基础教程,响应式编程的模型,笔记109
java·spring boot·笔记
wfsm3 小时前
flowable使用01
java·前端·servlet
员大头硬花生3 小时前
七、InnoDB引擎-架构-后台线程
java·数据库·mysql
拾荒的小海螺3 小时前
JAVA:Spring Boot3 新特性解析的技术指南
java·开发语言·spring boot
暹罗软件开发4 小时前
快速搭建分布式链路追踪系统:SkyWalking全攻略
java·skywalking
.格子衫.4 小时前
Maven中的配置
java·maven