# Category:Java

**Java**

This

**programming language**may be used to instruct a computer to perform a task.

Official website |
---|

Execution method: | Compiled (bytecode) |
---|---|

Garbage collected: | Yes |

Parameter passing methods: | By value |

Type safety: | Safe |

Type strength: | Strong |

Type compatibility: | Nominative |

Type expression: | Explicit |

Type checking: | Static |

Lang tag(s): | java, java5 |

See Also: |

The **Java** programming language, developed by Sun Microsystems, is a language aimed at allowing "high-performance", virtual application development.

Java source files (.java files) are typically compiled to an intermediate bytecode (all platform) executable (.class files) and executed by a Java Virtual Machine. Most modern JVMs further compile the bytecode into your processor's native machine code during execution. This native code translation is mostly done via a JIT compiler that is built in the JVM. Some Java compilers (such as GCJ) can compile Java code to native machine code ahead-of-time rather than just-in-time.

The primary benefits of Java are:

- Cross-platform (Write Once, Run Anywhere (if all of the libraries are ported))
- Comprehensive class library (which is thoroughly documented)
- Automatic memory management
- Large user community
- Well supported by the open source community and commercial industry (Sun, IBM, Oracle, HP, BEA, Apple Inc, etc.)

Java is used in a variety of environments including desktop applications, embedded device (PDA and wireless phone) applications, server-side web page serving applications (as JSP), and applets embedded in web pages.

There are a variety of arguments regarding Java's performance compared to other popular languages like C++. Some come to the conclusion that the programmer's choices make a bigger difference on performance in each language. Most show that each language is better than the other at specific types of operations (e.g. Java for memory allocation, C++ for numerical operations). An extensive summary of comparisons between Java and C++ can be found on Wikipedia.

According to some sources, Java is currently one of the most popular programming languages in the world.

Useful Java links:

## Todo

## Subcategories

This category has the following 3 subcategories, out of 3 total.

### @

- Java Implementations (4 P)
- Java User (339 P)

## Pages in category "Java"

The following 200 pages are in this category, out of 1,322 total.

(previous page) (next page)### C

- Command-line arguments
- Commatizing numbers
- Comments
- Compare a list of strings
- Compare length of two strings
- Compile-time calculation
- Compiler/AST interpreter
- Compiler/code generator
- Compiler/lexical analyzer
- Compiler/syntax analyzer
- Composite numbers k with no single digit factors whose factors are all substrings of k
- Compound data type
- Concurrent computing
- Conditional structures
- Conjugate transpose
- Consecutive primes with ascending or descending differences
- Constrained genericity
- Constrained random points on a circle
- Continued fraction
- Continued fraction/Arithmetic/Construct from rational number
- Continued fraction/Arithmetic/G(matrix ng, continued fraction n)
- Continued fraction/Arithmetic/G(matrix ng, continued fraction n1, continued fraction n2)
- Convert decimal number to rational
- Convert seconds to compound duration
- Convex hull
- Conway's Game of Life
- Copy a string
- Copy stdin to stdout
- CORDIC
- Count in factors
- Count in octal
- Count occurrences of a substring
- Count the coins
- Cramer's rule
- CRC-32
- Create a file
- Create a file on magnetic tape
- Create a two-dimensional array at runtime
- Create an HTML table
- Create an object/Native demonstration
- CSV data manipulation
- CSV to HTML translation
- Cuban primes
- Cullen and Woodall numbers
- Cumulative standard deviation
- Currency
- Currying
- Curzon numbers
- CUSIP
- Cut a rectangle
- Cycle detection
- Cyclotomic polynomial

### D

- Damm algorithm
- Data Encryption Standard
- Date format
- Date manipulation
- Day of the week
- Days between dates
- De Bruijn sequences
- De Polignac numbers
- Deal cards for FreeCell
- Death Star
- Deceptive numbers
- Decimal floating point number to binary
- Decision tables
- Deconvolution/1D
- Decorate-sort-undecorate idiom
- Deepcopy
- Define a primitive data type
- Delegates
- Delete a file
- Deming's funnel
- Department numbers
- Descending primes
- Detect division by zero
- Determinant and permanent
- Determine if a string has all the same characters
- Determine if a string has all unique characters
- Determine if a string is collapsible
- Determine if a string is numeric
- Determine if a string is squeezable
- Determine if only one instance is running
- Determine if two triangles overlap
- Determine sentence type
- Dice game probabilities
- Digital root
- Digital root/Multiplicative digital root
- Dijkstra's algorithm
- Dinesman's multiple-dwelling problem
- Dining philosophers
- Disarium numbers
- Discordian date
- Display a linear combination
- Distance and Bearing
- Distribution of 0 digits in factorial series
- Diversity prediction theorem
- DNS query
- Documentation
- Doomsday rule
- Dot product
- Doubly-linked list/Definition
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Doubly-linked list/Traversal
- Dragon curve
- Draw a clock
- Draw a cuboid
- Draw a pixel
- Draw a rotating cube
- Draw a sphere
- Duffinian numbers
- Dutch national flag problem
- Dynamic variable names

### E

- Earliest difference between prime gaps
- Eban numbers
- Echo server
- Eertree
- Egyptian division
- EKG sequence convergence
- Element-wise operations
- Elementary cellular automaton
- Elementary cellular automaton/Infinite length
- Elementary cellular automaton/Random number generator
- Elliptic curve arithmetic
- Elliptic Curve Digital Signature Algorithm
- Emirp primes
- Empty directory
- Empty program
- Empty string
- Enforced immutability
- Entropy
- Entropy/Narcissist
- Enumerations
- Environment variables
- Equal prime and composite sums
- Equilibrium index
- Erdös-Selfridge categorization of primes
- Erdős-Nicolas numbers
- Erdős-primes
- Esthetic numbers
- Ethiopian multiplication
- Euclid-Mullin sequence
- Euclidean rhythm
- Euler method
- Euler's constant 0.5772...
- Euler's identity
- Euler's sum of powers conjecture
- Evaluate binomial coefficients
- Even or odd
- Evolutionary algorithm
- Exceptions
- Exceptions/Catch an exception thrown in a nested call
- Executable library
- Execute a Markov algorithm
- Execute a system command
- Execute Brain****
- Execute Computer/Zero
- Execute CopyPasta Language
- Execute HQ9+
- Execute SNUSP
- Exponentiation operator
- Exponentiation order
- Extend your language
- Extensible prime generator
- Extra primes
- Extract file extension
- Extreme floating point values

### F

- Faces from a mesh
- Factorial
- Factorial base numbers indexing permutations of a collection
- Factorial primes
- Factorions
- Factorize string into Lyndon words
- Factors of a Mersenne number
- Factors of an integer
- Fairshare between two and more
- Farey sequence
- Fast Fourier transform
- FASTA format
- Faulhaber's formula
- Faulhaber's triangle
- Feigenbaum constant calculation
- Fermat numbers
- Fibonacci matrix-exponentiation
- Fibonacci n-step number sequences
- Fibonacci sequence
- Fibonacci word
- Fibonacci word/fractal
- File extension is in extensions list
- File input/output
- File modification time
- File size
- File size distribution
- Filter
- Find Chess960 starting position identifier
- Find common directory path
- Find duplicate files
- Find first and last set bit of a long integer
- Find if a point is within a triangle
- Find largest left truncatable prime in a given base

- Execution method/Compiled/Bytecode
- Garbage collection/Yes
- Parameter passing/By value
- Typing/Safe
- Typing/Strong
- Typing/Compatibility/Nominative
- Typing/Expression/Explicit
- Typing/Checking/Static
- Programming Languages
- Programming paradigm/Object-oriented
- Programming paradigm/Imperative
- Programming paradigm/Generic
- Programming paradigm/Reflective