-->

partial classes/partial class file

2019-01-17 17:26发布

问题:

In C# .net there is a provision to have two different class files and make them a single class using the keyword partial keyword.this helps it to keep [for ex]UI and logic seperate. of course we can have two classes to achieve this one for UI and other for logic. Can this be achieved in java some how?

回答1:

On source file splitting

No. Java source codes can not be split across multiple files.

From the Wikipedia article Comparison of Java and C Sharp

The Sun Microsystems Java compiler requires that a source file name must match the only public class inside it, while C# allows multiple public classes in the same file, and puts no restrictions on the file name. C# 2.0 and later allows a class definition to be split into several files, by using the partial keyword in the source code. In Java, a public class will always be in its own source file. In C#, source code files and logical units separation are not tightly related.


On separating logic and UI into their own classes

The two classes approach is a much better solution than the one-class-two-source approach in this case, because the separation is enforced in the design, not just physical separation in the source codes.

See also

  • Separation of logic and UI
  • oo question - mixing controller logic and business logic
  • Why is good UI design so hard for some Developers?