好奇 Java 味是什么味

GotKiCry · 昨天 18:12 · 3606 次点击
我把 Time 处理相关的写到 TimeUtil 里面,File 相关写到 FileUtil 里面。这样算 Java 味吗。
一直是在用 Java 和 Kotlin 写 Android 代码,写 Python 脚本如果是长期项目我是尽量会把代码抽离出来,不知道这样的操作是不是 Java 味太重了🤔🤔🤔
举报· 3606 次点击
登录 注册 站外分享
34 条回复  
mahaoqu 小成 昨天 18:17
大概就这种: public interface Subject { public void attach(Observer observer); public void detach(Observer observer); public void notifyObservers(); } public interface Observer { public void update(Subject subject); } public class HelloWorldSubject implements Subject { private ArrayList observers; private String str; public HelloWorldSubject() { super(); observers = new ArrayList(); } public void attach(Observer observer) { observers.add(observer); } public void detach(Observer observer) { observers.remove(observer); } public void notifyObservers() { Iterator iter = observers.iterator(); while (iter.hasNext()) { Observer observer = iter.next(); observer.update(this); } } public String getStr() { return str; } public void setStr(String str) { this.str = str; notifyObservers(); } } public class HelloWorldObserver implements Observer { public void update(Subject subject) { HelloWorldSubject sub = (HelloWorldSubject)subject; System.out.println(sub.getStr()); } } public interface Command { void execute(); } public class HelloWorldCommand implements Command { private HelloWorldSubject subject; public HelloWorldCommand(Subject subject) { super(); this.subject = (HelloWorldSubject)subject; } public void execute() { subject.setStr("hello world"); } } public interface AbstractFactory { public Subject createSubject(); public Observer createObserver(); public Command createCommand(Subject subject); } public class HelloWorldFactory implements AbstractFactory { public Subject createSubject() { return new HelloWorldSubject(); } public Observer createObserver() { return new HelloWorldObserver(); } public Command createCommand(Subject subject) { return new HelloWorldCommand(subject); } } public class FactoryMakerSingleton { private static FactoryMakerSingleton instance = null; private AbstractFactory factory; private FactoryMakerSingleton() { factory = new HelloWorldFactory(); } public static synchronized FactoryMakerSingleton getInstance() { if (instance == null) { instance = new FactoryMakerSingleton(); } return instance; } public AbstractFactory getFactory() { return factory; } } public class AbuseDesignPatterns { public static void main(String[] args) { AbstractFactory factory = FactoryMakerSingleton.getInstance().getFactory(); Subject subject = factory.createSubject(); subject.attach(factory.createObserver()); Command command = factory.createCommand(subject); command.execute(); } }
NessajCN 小成 昨天 18:20
Jvav 味儿比二次元味儿都冲 如果你还需要别人来告诉你啥是 Jvav 味儿而不能靠自己一眼分辨, 那说明你自己早就腌制入味了 就好像抽烟的人旁人一闻可知,他自己却总是自我感觉良好
GotKiCry 楼主 小成 昨天 18:22
@NessajCN emmm 。主要我接触其他语言比较少,除了 Java 相关只接触过 Python 和稍微学习过 Go
wxw752 初学 昨天 18:26
你糊涂呀,这么好的话题不在上班时间发。
sagaxu 初学 昨天 18:26
读取某个文件,正常味道的语言 open().read() fd = open(...); read(fd, ...); File(...).readAll() ioutils.read(...) Java 味儿,来,先学一下 reader, buffered reader, inputstream, buffered input stream ,然后再研究用哪个,中间包的用完了该不该 close 。 设计时就确定只有一个 implementation ,也要强行定义 interface ,还要定义一堆一模一样的 vo/dto...,不要问,问就是业界规范,大家都这么干。
GotKiCry 楼主 小成 昨天 18:26
@wxw752 还在上班中,只是快下班了扫了一眼论坛😂
GotKiCry 楼主 小成 昨天 18:28
@sagaxu Java 这些 Reader Stream 我自己也难绷
dranfree 小成 昨天 18:29
Java 味就是啰嗦,代码写起来像老太太的裹脚布,又臭又长……
murmur 小成 昨天 18:31
@sagaxu java 也有 hutool ,别黑了,java 味就是标准的 controller bean service ,真落在业务逻辑,都是调库,谁手搓原生代码啊
1234下一页
返回顶部